【vb精品源码栏目提醒】:以下是网学会员为您推荐的vb精品源码-Sql语言程序设计教程 - 讲义教程,希望本篇文章对您学习有所帮助。
第一章 Sql语言程序设计基础 第一节 数据类型 Sql sever的数据类型 数据类型 范围 通常存储 Tinyint 025528-1一个字节 整型数据 Smalint -215215-1两个字节 整型数据 Int -231231四个字节 整型数据 Bigint -263263-1个个字节 整型数据 Real -3.40E383.40E38 近似浮点精度数据 Float -1.79E3081.79E308 近似浮点精度数据 decimalnumeric 精确小数数据 Money -263263-1 货币数据 smallmoney -263263-1 货币数据 Datetime 1753.1.19999.12.31 日期和时间数据 smalldatetime 1900.1.12079.6.6 日期和时间数据 Charn N可以是18000 不定长字符数据 Nchar 最大长度是4000字节 定长Unicode数据 Varcharn N可以是18000 可变长字符数据 Nvarchar 最大长度是4000字节 可变长Unicode数据 Text 最大长度是231-1字符 字符串数据 Ntext 最大长度是230-1字符 可变长Unicode数据 Bit 0或1一个二进制位 0或1的数据 Image 最大长度是231-4字节4个字节 存储图像二进制数据 Binary 最大长度是8000字节 定长二进制数据 Varbinary 最大长度是8000字节 可变长二进制数据 Sql_variant 最大长度是8016字节 Timestamp 最大存储大小是8字节 uniqueidentifier 分配16字节空间 该数据一般由newid函数生成 一、整型数据数据类型 整型数据常量可以用十进制直接表示也可以以0X开始的十六进制数表示例如25、0x15。
二、小数数据类型 Real和flaot数据类型为近似浮点数据类型decimalnumeric为精确小数数据类型 DecimalPs P为小数点左边和右边数字之和不包括小数点。
如 123.45则 p5s2。
指定精度或对象能够控制的数字个数。
s 为可放到小数点右边的小数位数或数字个数。
p 和 s 必须遵守以下规则0 lt s lt p lt 38。
对于Real和flaot数据类型的数据不能用于等于和不等于判断。
float 和 real 常量使用科学记数法来表示。
三、字符串数据类型 字符串两边必须加单引号 Charn、varcharn、text和nCharn、nvarcharn、ntext数据类型的区别 无n字母数据类型存储的为非unicode即与输入法的半角相似如果内容非汉字时最好用无n字母数据类型。
Char、varchar数据类型的区别charn为定长字符串数据类型即如果输入的内容不足n字符时用空格补齐用其定义的变量或字段存储空间为n个字节。
varcharn为变长数据类型即n 为输入字符个数的最大值很相当于数据结构的链表结构用其定义的变量或字段存储空间根据输入的内容的多少决定输入多少个字符就有多大的空间但最大不能超过n个字节空间。
Text数据类型定义的变量或字段用于存储内容很多比如文章内容。
四、日期时间数据类型 日期时间数据两边必须加单引号格式为“yyyy-mm-dd” 五、货币数据 货币数据是小数位保留四位的小数超过四舍五入。
六、uniqueidentifier数据类型 该数据显示形式为xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字例如6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 uniqueidentifier 值允许对 uniqueidentifier 值执行的操作只有比较 ltgt lt gt lt gt 和检查 NULLIS NULL 和 IS NOT NULL。
不允许使用其它算术运算符。
该值的使用与全局唯一标识符 GUID 一样。
GUID 是一个唯一的二进制数字世界上的任何两台计算机都不会生成重复的 GUID 值。
GUID 主要用于在拥有多个节点、多台计算机的网络中分配必须具有唯一性的标识符。
GUID数值是通过API内部函数获得。
Transact-SQL NEWID 函数以及应用程序 API 函数和方法从它们网卡上的标识数字以及 CPU 时钟的唯一数字生成新的 uniqueidentifier 值。
每个网卡都有唯一的标识号。
由 NEWID 返回的 uniqueidentifier 使用服务器上的网卡生成。
由应用程序 API 函数和方法返回的 uniqueidentifier 使用客户机上的网卡生成。
uniqueidentifier 常量的方法有两种格式 字符串格式 6F9619FF-8B86-D011-B42D-00C04FC964FF 二进制格式 0xff19966f868b11d0b42d00c04fc964ff 第二节 变量 一、局部变量 局部变量是用户可自定义的变量局部变量是有作用域的它的作用域是定义它的批处理或者过程。
在一个批处理中是不能引用其他批处理中定义的局部变量的。
。
在程序中通常用来储存从表中查询到的数据或当作程序执行过程中暂存变量使用。
局部变量必须以“”开头是局部变量的标识符而且必须先用DECLARE命令说明后才可使用即定义变量。
用户定义的变量不能定义为Text、Ntext、Image数据类型。
二、全局变量 全局变量是SQL Server系统内部使用的变量其作用范围并不局限于某一程序而是任何程序均可随时调用全局变量通常存储一些SQL Server的配置设定值和效能统计数据。
用户可在程序中用全局变量来测试系统的设定值或Transact-SQL命令执行后的状态值。
注意全局变量不是由用户的程序定义的它们是在服务器级定应义的。
引用全局变量时必须以“”开头。
局部变量的名称不能与全局变量的名称相同、否则会在应用中出错。
全局变量名称 功能 ERROR 最后一个错误的错误号 IDENTITY 最后一个插入的标识值 LANGUAGE 当前使用语言的名称 MAX_CONNECTIONS 可以创建的同时链接的最大数目 ROWCOUNT 受上一个语言影响的行数 SERVERNAME 本地服务器的名称 SERVICENAME 该计算机上的服务的名称 TIMETICKS 当前计算机上每刻度的微秒数 TRANSCOUNT 当前连接打开的事务数 VERSION SQL Server的版本信息 DATEFIRST 返回一周第一天的星期数 三、定义变量数据类型 DECLARE 变量名 变量类型 变量名 变量类型… 第三节 Sql基本语句 一、赋值语句 set select 同时对多个变量同时赋值 不支持 支持 表达式返回多个值时 出错 将返回的最后一个值赋给变量 表达式未返回值 变量被赋null值 变量保持原值 SELECT 局部变量变量值局部变量变量值···· SET 局部变量变量值 二、输出语句 print 字符串常量变量名 向客户端返回用户定义消息返回信息出现在消息选项卡内。
select 变量名 返回信息出现在表格选项卡内。
三、注释语句 可以在批量或过程中使用注解语句以书写代码的描述。
多行注解语句在/和/中。
单行注解语句以—两个连字符开始。
例如1 /注解语句1 注解语句2。
/ 例如2 --注解语句。
四、Go语句 不是Transact-SQL语句而是可为SQL Server查询分析器识别的命令。
GO向 SQL Server 实用工具发出一批 Transact-SQL 语句结束的信号。
go是把t-sql语句分批次执行。
一步成功了才会执行下一步即一步一个GO Go语句可以限制局部用户定义变量的作用域范围 例如 Declare aa Set aa??abc?? Go Print aa 执行以上批处理语句出现报错信息“aa变量未声明”因aa变量的作用域在Go语句之前。
五、Use 语句 改变当前操作数据库 例如 Use Pubs 将当前操作数据库切换为Pubs。
USE在存储过程中不能直接使用但可以这样用: create proc test as execuse pubs select from jobs go --使用Execute语句配合USE来改变当前数据库但数据库环境的更改只在Execute语句结束前有效所以必须把后面的语句和Execute放到一起 create proc test as execuse pubs select from jobs go 执行execuse pubs语句后当前数据库又恢复到原来的数据库。
所以以上语句会报错。
但也可以以下写 create proc test as select from pubs.dbo.jobs go 在引用其它数据库中数据表 数据库名.dbo.数据表名 六、
上一篇:
程序设计基础(C)作业
下一篇:
计算机网络信息安全及防护策略研究