易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL SERVER操作ACCESS的存储过程

/*
--作用:SQL SERVER操作ACCESS的存储过程
----------------------用法-------------------------------
--创建表tc
exec sp_operate_access 'create table tc(id int)','c:\db1.mdb'
go
--在tc表插入数据
exec sp_operate_access 'insert into tc(id) values(1)','c:\db1.mdb'
go
--删除tc表的数据
exec sp_operate_access 'delete from tc where id=1','c:\db1.mdb'
go
--删除TC表
exec sp_operate_access 'drop table tc','c:\db1.mdb'
go
--删除存储过程
drop proc sp_operate_access
*/
--创建存储过程
create proc sp_operate_access
@cmdsql varchar(8000),
@accessfilename nvarchar(1000)
as
begin   
    declare @out int,@err int,@obj int,@constr nvarchar(1000),@src nvarchar(255),@desc nvarchar(255)
   
    select @constr='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+@accessfilename  
   
    exec @err=sp_oacreate 'adodb.connection',@obj out
    if @err=0
    begin
        exec @err=sp_oamethod @obj,'open',null,@constr
        if @err=0
        begin
            exec @err=sp_oamethod @obj,'execute',@out out,@cmdsql
            if @err=0
            begin
                EXEC sp_OAMethod @obj, 'Quit'
                exec sp_oadestroy @obj
                return
            end
            else
      


相关文档:

sql server中in和exists的小区别 oracle未测试

in 的话, 如果是null 就不比较了,既不是in 也不是 not in
exists的话 因为用 = 加在条件里比较了,所以 null 是 not exists
select *
from pricetemp
where cast(商品コード as varchar(10))not in(
           select shohin_cd
  &nbs ......

sql 修改列名及表名

代码如下:
EXEC sp_rename '表名.[原列名]', '新列名', 'column'
*************************************************************************
Transact-SQL 参考
sp_rename
更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。
示例
A. 重命名表
下例将表 customers 重命名为 custs。 ......

SQL去除某一字段值重复记录的方法

原理:对需要去重复记录的字段按组排序,然后取其中一条记录。在总查询语句中使用in语法过滤
去掉重复记录
select * from company where comid in (select Max(comid) from company group by companyname)
得到重复记录数
select * from company where comid not in (select Max(comid) from company group by companyn ......

动态SQL基本语法

 1 :普通SQL语句可以用exec执行
Select * from tableName
exec('select * from tableName')
exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N
2:字段名,表名,数据库名之类作为变量时,必须用动态SQL
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname fr ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号