随笔分类 -  经典SQL

经典SQL
轻松实现SQL Server与Access、Excel数据表间的导入导出
摘要:在SQL SERVER 2000/2005中除了使用DTS进行数据的导入导出,我们也可以使用Transact-SQL语句进行导入导出操作。在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET 函数,关于函数的详细说明,请参考SQL联机帮助。 利用下述方法,可以十分容易地实现SQL SERVER、ACCESS、EXCEL数据转换,详细说明如下: 一、SQL SERVER 和ACCESS的数据导入导出 常规的数据导入导出: 使用DTS向导迁移你的Access数据到SQL Server,你可以使用这些步骤: 1在SQL SERVER企业管理器中的Too 阅读全文

posted @ 2011-03-15 18:33 韩显川 阅读(373) 评论(0) 推荐(0)

把Execel直接导入数据库的SQL语句
摘要:insert abcd(药品名称,市场价,会员价,药品简述,规格,单位,厂家,药品通用名,说明书)select 药品名称,市场价,会员价,药品简述,规格,单位,厂家,药品通用名,说明书from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\a.xls',Sheet1$) 阅读全文

posted @ 2011-03-15 17:47 韩显川 阅读(283) 评论(0) 推荐(0)

SQL操作全集
摘要:SQL操作全集下列语句部分是Mssql语句,不可以在access中使用。SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)首先,简要介绍基础语句:1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_add 阅读全文

posted @ 2011-01-20 10:02 韩显川 阅读(139) 评论(0) 推荐(0)

存储过程返回新添加的ID值
摘要:方法一:Select @@IDENTITY方法二:Select IDENT_CURRENT('TEST')方法三:Select SCOPE_IDENTITY() 阅读全文

posted @ 2010-11-26 15:51 韩显川 阅读(159) 评论(0) 推荐(0)

千万数量级分页存储过程
摘要:分享]千万数量级分页存储过程数据分页是开发过程中常见任务之一,大的项目开发当中经常会使用存储过程进行数据分页,有网上流行的《通用高效分页存储过程代码》,也有号称可以轻松应付百万数据的《一个高效的数据分页的存储过程 可以轻松应付百万数据》,通过一些数据测试比较,本文提供的千万数量级分页存储过程是货真价实的数量级分页存储过程。而且你可以学习相关存储过程编写经验和优化措施,以及使用SQL存储过程要特别注... 阅读全文

posted @ 2010-11-22 09:40 韩显川 阅读(214) 评论(0) 推荐(0)

Sql自动更新不同IP的数据库数据。(link Server)
摘要:if not exists(select * from master.dbo.sysservers where srvname='srv_lnk6' and datasource='19.127.57.227')begin if exists(select * from master.dbo.sysservers where srvname='srv_lnk6') begin--IP的改变时删除注... 阅读全文

posted @ 2010-11-15 14:14 韩显川 阅读(210) 评论(0) 推荐(0)

命令操作SQL数据库
摘要:--特别注意 --请按步骤进行,未进行前面的步骤,请不要做后面的步骤 --否则可能损坏你的数据库. --一般不建议做第4,6两步 --第4步不安全,有可能损坏数据库或丢失数据 --第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复. --下面的所有库名都指你要处理的数据库的库名 1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志: B... 阅读全文

posted @ 2010-06-03 17:16 韩显川 阅读(172) 评论(0) 推荐(0)

SQL2000 修改表所有者的方法
摘要:单个修改所有者sql语句如下:查询分析器输入:EXEC sp_changeobjectowner 'user.table', 'dbo'user.table的意思为:所有者.表名,比如oblog.oblog_user,以前的语句表示将table这张表的所有者由user改成dbo批量修改所有者语句如下:查询分析器输入:exec sp_msforeachtable 'sp_changeobjectow... 阅读全文

posted @ 2010-04-23 15:35 韩显川 阅读(190) 评论(0) 推荐(0)

Access 系统表
摘要:Access 系统表 MsysObjects 包含了数据库对象列表。尽管未在文档中记载,你仍可通过查询它来获取你想要的。但是默认情况下无法操作系统表,必须手动设定权限收才能查询系统表。请参考以下动画:如何获取对msysobject的操作权限http://access911.net/eg/swf/msobject.swf警告:不要修改任何ACCESS系统表,否则会出现不可意料的情况.使用下列 SQL... 阅读全文

posted @ 2010-01-25 08:38 韩显川 阅读(766) 评论(0) 推荐(0)

得到SQL Server表名和字段信息
摘要:---表字段名--select b.[name] as '列名',c.[name] as '数据类型',b.length as '长度',d.value as '描述' from sysobjects aleft join syscolumns b on a.[id]=b.[id]left join systypes c on b.xtype=c.xtype and b.xusertype=c.x... 阅读全文

posted @ 2010-01-19 13:49 韩显川 阅读(260) 评论(0) 推荐(0)

sql server与access之间的sql语法差异
摘要:摘自互联网下边列出sql server与access的语法差别,方便大家在更换程序数据库时查询。日期分隔符号  access:英镑符(#)  sql server:撇号(’)Boolean 常量  access:True、False;On、Off;Yes、No;整数:-1(真)、0(假)。  sql server:整数:1(真)、0(假) 字符串连接   access:和号(&... 阅读全文

posted @ 2010-01-19 13:27 韩显川 阅读(184) 评论(0) 推荐(0)

关于ACCESS系统表的管理
摘要:ACCESS2000文件格式第一步:显示系统表 菜单:【工具】>【选项】 选项卡:试图 显示:系统对象第二步:设置系统表的操作权限 菜单:【工具】>【安全】>【用户与组权限】 对象名称:选择需要设置权限的系统表名称(MSysObjects) 权限:复选择“查询数据”,“更新数据”,“插入数据”,“... 阅读全文

posted @ 2009-12-31 09:07 韩显川 阅读(259) 评论(0) 推荐(0)

获取Access系统表
摘要:Access 系统表 MsysObjects 包含了数据库对象列表, 尽管未在文档中记载, 你仍可通过查询它来获取你想要的.注: 请不要有意或无意地修改任何ACCESS系统表,否则会出现不可意料的情况.使用下列 SQL 语句来获取你想要的查询:SELECT MSysObjects.Name FROM MsysObjects WHERE (Left([Name],1)<>"~") AND... 阅读全文

posted @ 2009-12-31 09:06 韩显川 阅读(198) 评论(0) 推荐(0)

SQL分页语句
摘要:有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活。先看看单条 SQL 语句的分页 SQL 吧。方法1:适用于 SQL Server 2000/2005SELECT TOP 页大小 *FROM table1WHERE id NOT IN ( SELECT TOP 页大小... 阅读全文

posted @ 2009-11-09 18:08 韩显川 阅读(196) 评论(0) 推荐(0)

SQLserver字符串分割函数
摘要:一、按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果。CREATE function Get_StrArrayLength(@str varchar(1024),--要分割的字符串@split varchar(10)--分隔符号)returns intasbegindeclare @location intdeclare @sta... 阅读全文

posted @ 2009-09-24 15:06 韩显川 阅读(399) 评论(0) 推荐(0)

存储过程 批量删除记录
摘要:--------------------------------------用途:根据id字符串删除所有的记录--项目名称:--说明:--时间:2008-8-13 14:44:20------------------------------------CREATE PROCEDURE XTJ_NewsInfor_DeleteArray @ID nvarchar(1000) as DECLARE... 阅读全文

posted @ 2009-09-16 10:12 韩显川 阅读(281) 评论(0) 推荐(0)

如何存储过程中如何遍历一个表
摘要:SQL Server:declare @name varchar(30); declare my_cursor SCROLL cursor for select ProductName from kuailegu.tb_Product; open my_cursor; fetch my_cursor into @name; WHILE (@@fetch_status = 0) begin FETC... 阅读全文

posted @ 2009-07-06 10:47 韩显川 阅读(2954) 评论(1) 推荐(0)

一个有关树取其下面所有的子节点的SQL
摘要:select * from 树那张表 where status <> '-1'start with id = ?connect by prior id = parentid 阅读全文

posted @ 2009-06-19 15:07 韩显川 阅读(177) 评论(0) 推荐(0)

导航