SQL语法,SQL语句大全,SQL基础
SQL 语法参考手册(SQL)/数据类型
2006-07-24 07:42
《SQL 语法参考手册(SQL)》
DB2 提供了关连式资料库的查询语言 SQL (Structured Query Language),是一种非常口语化、既易学又易懂的语法。此一语言几乎是每个资料库系统都必须提供的,用以表示关连式的*作,包含了资料的定义(DDL)以及资料的处理(DML)。SQL原来拼成SEQUEL,这语言的原型以“系统 R“的名字在 IBM 圣荷西实验室完成,经过IBM内部及其他的许多使用性及效率测试,其结果相当令人满意,并决定在系统R 的技术基础发展出来 IBM 的产品。而且美国国家标准学会(ANSI)及国际标准化组织(ISO)在1987遵循一个几乎是以 IBM SQL 为基础的标准关连式资料语言定义。
一、资料定义 DDL(Data Definition Language)
资料定语言是指对资料的格式和形态下定义的语言,他是每个资料库要建立时候时首先要面对的,举凡资料分哪些表格关系、表格内的有什麽栏位主键、表格和表格之间互相参考的关系等等,都是在开始的时候所必须规划好的。
1、建表格:
Create TABLE table_name(
column1 DATATYPE [NOT NULL] [NOT NULL PRIMARY KEY],
column2 DATATYPE [NOT NULL],
...)
说明:
DATATYPE --是资料的格式,详见表。
NUT NULL --可不可以允许资料有空的(尚未有资料填入)。
PRIMARY KEY --是本表的主键。
2、更改表格
Alter TABLE table_name
ADD COLUMN column_name DATATYPE
说明:增加一个栏位(没有删除某个栏位的语法。
Alter TABLE table_name
ADD PRIMARY KEY (column_name)
说明:更改表得的定义把某个栏位设为主键。
Alter TABLE table_name
Drop PRIMARY KEY (column_name)
说明:把主键的定义删除。
3、建立索引
Create INDEX index_name ON table_name (column_name)
说明:对某个表格的栏位建立索引以增加查询时的速度。
相关文档:
create PROCEDURE pagelist
@tablename nvarchar(50),
@fieldname nvarchar(50)='*',
@pagesize int output,--每页显示记录条数
@currentpage int output,--第几页
@orderid nvarchar(50),--主键排序
@sort int,--排序方式,1表示升序,0表示降序排列
......
视图可以被看成是虚拟表或存储查询。可通过视图访问的数据不作为独特的对象存储在数据库内。数据库内存储的是 SELECT 语句。SELECT 语句的结果集构成视图所返回的虚拟表。用户可以用引用表时所使用的方法,在 Transact-SQL 语句中通过引用视图名称来使用虚拟表。使用视图可以实现下列任一或所有功能:
将用户限定在表 ......
写了一段例子,通过sql创建一个job,定期执行一些清除工作。在sql2005上测试通过。
sql帮助文档太零散了。这是一个完整的流程。不过注意定时执行时需要sql server agent服务器启动的。
USE msdb ;
GO
EXEC dbo.sp_add_job
@job_name = N'Clear oldest HB',
@enabled = 1,
@description = N'Clear heart ......
平时很少用SQL Server 2008,偶尔用一次,还真是遇到了一些问题,几经周折,从官网上才找到解决办法:
问题描述:登陆后,点击数据库,出现服务器主体 "xxxcom" 无法在当前安全上下文下访问数据库 "db_xxx_com"。
问题原因:SQL Server 2008 bug
问题解决办法(非原创,参考官网):
1、用SQL Server Management Studi ......
1.查询出当前连接然后将其关闭
select spid
from master.dbo.sysprocesses
where dbid= db_id('数据库名')
--db_id('DoNet')
如spid 值为 52.
2. 執行:
kill 52
3.修改數據庫名
EXEC sp_dboption 'old_db_name', 'Single User', 'false'
&nb ......