sql判断存储过程是否存在

1 判断数据库教程是否存在
Sql代码
if exists (select * from sys.databases where name = ’数据库名’)
drop database [数据库名] if exists (select * from sys.databases where name = ’数据库名’)
drop database [数据库名]

2 判断表是否存在
Sql代码
if exists (select * from sysobjects where id = object_id(N’[表名]’) and OBJECTPROPERTY(id, N’IsUserTable’) = 1)
drop table [表名] if exists (select * from sysobjects where id = object_id(N’[表名]’) and OBJECTPROPERTY(id, N’IsUserTable’) = 1)
drop table [表名]

查看更多内容...

Posted in 数据库 at May 18, 2016. by 傻猫 .    Views: 4037    No Comments

SQL Server 2008 Management Studio 过期无法使用解决办法

SQL Server 2008 评估期已过解决方法?
SQL Server Management Studio 过期无法使用解决办法?

解决办法:

安装SQL Server 2008的时候没有输入序列号,后来才发现是Express版的,今天到期了,升级SQL后,SQL服务可以用了,但SQL Server Management Studio缺无法使用。SQL Server 2008有180天的试用期,过期后会提示“评估期已过”的提示。
在网上找了许久找到了一个解决方法:

1、修改注册表(Regedit): 路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\100\ConfigurationState下的CommonFiles文件,将值从1改为3。

2、进入SQL Server安装中心:
201105062325308450.png

3、选择“维护”-“版本升级”
201105062325323825.png

4、输入密钥,其他的根据提示操作,升级完成后就可以了。

Posted in 数据库 at September 8, 2015. by 傻猫 .    Views: 2773    No Comments

ClientDataSet调用存储过程方法

ClientDataSet调用方法(实际上就是三层中的远端执行):

procedure TMain.btn_ClientDataSetExecClick(Sender: TObject); begin DataSource1.DataSet := ClientDataSet1; ClientDataSet1.ProviderName := 'DataSetProvider1'; DataSetProvider1.DataSet.Close; //即执行了 Adoquery1.Close; ClientDataSet1.Close; ClientDataSet1.CommandText := 'Execute up_TestAdoExec :@inVar,:@outVar output'; ClientDataSet1.Params.Clear; //调用存储过程时,必须把此语句放在对CommandText的赋值操作之后 ClientDataSet1.Params.CreateParam(ftString,'@inVar',ptInput); ClientDataSet1.Params.CreateParam(ftString,'@outVar',ptOutput); ClientDataSet1.Params.ParamByName('@inVar').Size := 100; ClientDataSet1.Params.ParamByName('@inVar').Value := Edit1.Text; ClientDataSet1.Params.ParamByName('@outVar').Size := 100; //ClientDataSet1.Params.ParamByName('@outVar').Value := Edit2.Text; //ClientDataSet1.Execute;//如果不返回结果集,执行此语句 ClientDataSet1.Open; Edit2.Text := ClientDataSet1.Params.ParamByName('@outVar').Value; end;

Posted in 数据库 at September 1, 2015. by 傻猫 .    Views: 2419    No Comments

SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。

  1.INSERT INTO SELECT语句

  语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

  要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。示例如下:

2.SELECT INTO FROM语句

  语句形式为:SELECT vale1, value2 into Table2 from Table1

  要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。示例如下:
Posted in 数据库 at December 4, 2014. by 傻猫 .    Views: 3833    No Comments

Sql Server中的日期与时间函数

Sql Server中的日期与时间函数

  1. 当前系统日期、时间
    select getdate()

  2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值
    例如:向日期加上2天
    select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.000

  3. datediff 返回跨两个指定日期的日期和时间边界数。
    select datediff(day,'2004-09-01','2004-09-18') --返回:17

  4. datepart 返回代表指定日期的指定日期部分的整数。
    SELECT DATEPART(month, '2004-10-15') --返回 10

查看更多内容...

Posted in 数据库 at November 27, 2014. by 傻猫 .    Views: 2713    No Comments

未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法

本错误是由于你使用了ACCESS2007版本建立的数据库,但服务器中没有相配合使用的程序,所以出错.

未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.InvalidOperationException: 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序。

下载2007 Office system 驱动程序:数据连接组件安装

http://download.microsoft.com/download/7/0/3/703ffbcb-dc0c-4e19-b0da-1463960fdcdb/AccessDatabaseEngine.exe

此下载将安装一组组件,非 Microsoft Office 应用程序可以使用它们从 2007 Office system 文件中读取数据,
例如从 Microsoft Office Access 2007(mdb 和 accdb)文件以及 Microsoft Office Excel 2007(xls、xlsx 和 xlsb)文件中读取数据。这些组件还支持与 Microsoft Windows SharePoint Services 和文本文件建立连接。

此外,还会安装 ODBC 和 OLEDB 驱动程序,供应用程序开发人员在开发与 Office 文件格式连接的应用程序时使用。

查看更多内容...

Posted in 数据库 at November 12, 2014. by 傻猫 .    Views: 3812    No Comments

EXCEL怎么把日期转换成文本

EXCEL怎么把日期转换成文本

20090101 2009年1月1日
20090701 2009年7月1日

=TEXT(A1,"0000年00月00日")

Posted in 数据库 at September 15, 2014. by 傻猫 .    Views: 3096    No Comments

mssql查询所有表和所有表记录数

select object_name(id) as tablename,rows from sysindexes
where id in (select id from sysobjects where xtype='U') and indid in (0,1)

Posted in 数据库 at April 9, 2014. by 傻猫 .    Views: 3656    No Comments