‘壹’ sql代码...
begin transaction --开始一个事务
declare @err int --定义整形变量err
set @err=0 --初始化err
update bank set currentmoney=currentmoney-1000
where uid=1 --对银行表中uid为1的资金现存量进行修改-1000
set @err=@err+@@error --记录出错信息
update bank set currentmoney=currentmoney+1000
where uid=2 --对银行表中uid为2的资金现存量进行修改+1000
set @err=@err+@@error --记录出错信息
if @err=0
commit --如果未出错事务提交并结束
else
rollback --如果出错回滚事务
‘贰’ SQL代码解释
t.*,t,是一张表的指代,比喻 slect t.* from tableA t; t,代指tableA
t.ID,就是这张表里面的ID了,其余的类似,里面还有什么job_no.text,应该是控件的值了。。
where ....条件查询
group by 分组查询
left join 左连接,一左边为主表 匹配右边的,你网络下就懂了。
‘叁’ 如何使用SQL代码创建数据库
CREATEDATABASEdatabase_name[CONTAINMENT={NONE|PARTIAL}][ON[PRIMARY][,n][,[,n]][LOGON[,n]]][COLLATEcollation_name][WITH[,n]][;]::={FILESTREAM([,n])|DEFAULT_FULLTEXT_LANGUAGE={lcid|language_name|language_alias}|DEFAULT_LANGUAGE={lcid|language_name|language_alias}|NESTED_TRIGGERS={OFF|ON}|TRANSFORM_NOISE_WORDS={OFF|ON}|TWO_DIGIT_YEAR_CUTOFF=|DB_CHAINING{OFF|ON}|TRUSTWORTHY{OFF|ON}}::={NON_TRANSACTED_ACCESS={OFF|READ_ONLY|FULL}|DIRECTORY_NAME='directory_name'}_nameON[,n]FOR{{ATTACH[WITH[,n]]}|ATTACH_REBUILD_LOG}[;]::={(NAME=logical_file_name,FILENAME={'os_file_name'|'filestream_path'}[,SIZE=size[KB|MB|GB|TB]][,MAXSIZE={max_size[KB|MB|GB|TB]|UNLIMITED}][,FILEGROWTH=growth_increment[KB|MB|GB|TB|%]])}::={FILEGROUPfilegroup_name[CONTAINSFILESTREAM][DEFAULT][,n]}::={|RESTRICTED_USER|FILESTREAM(DIRECTORY_NAME={'directory_name'|NULL})}::={ENABLE_BROKER|NEW_BROKER|ERROR_BROKER_CONVERSATIONS}_snapshot_nameON(NAME=logical_file_name,FILENAME='os_file_name')[,n]ASSNAPSHOTOFsource_database_name[;]database_name新数据库的名称。数据库名称在SQLServer的实例中必须唯一,并且必须符合标识符规则。除非没有为日志文件指定逻辑名称,否则database_name最多可以包含128个字符。如果未指定逻辑日志文件名称,则SQLServer将通过向database_name追加后缀来为日志生成logical_file_name和os_file_name。这会将database_name限制为123个字符,从而使生成的逻辑文件名称不超过128个字符。如果未指定数据文件的名称,则SQLServer使用database_name作为logical_file_name和os_file_name。默认路径从注册表中获得。可以使用ManagementStudio中的“服务器属性”(“数据库设置”页)更改默认路径。更改默认路径要求重新启动SQLServer。CONTAINMENT指定数据库的包含状态。NONE=非包含数据库。PARTIAL=部分包含的数据库。ON指定显式定义用来存储数据库数据部分的磁盘文件(数据文件)。当后面是以逗号分隔的、用以定义主文件组的数据文件的项列表时,需要使用ON。主文件组的文件列表可后跟以逗号分隔的、用以定义用户文件组及其文件的项列表(可选)。PRIMARY指定关联的列表定义主文件。在主文件组的项中指定的第一个文件将成为主文件。一个数据库只能有一个主文件。有关详细信息,请参阅数据库文件和文件组。如果没有指定PRIMARY,那么CREATEDATABASE语句中列出的第一个文件将成为主文件。LOGON指定显式定义用来存储数据库日志的磁盘文件(日志文件)。LOGON后跟以逗号分隔的用以定义日志文件的项列表。如果没有指定LOGON,将自动创建一个日志文件,其大小为该数据库的所有数据文件大小总和的25%或512KB,取两者之中的较大者。此文件放置于默认的日志文件位置。有关此位置的信息,请参阅查看或更改数据文件和日志文件的默认位置(SQLServerManagementStudio)。不能对数据库快照指定LOGON。COLLATEcollation_name指定数据库的默认排序规则。排序规则名称既可以是Windows排序规则名称,也可以是SQL排序规则名称。如果没有指定排序规则,则将SQLServer实例的默认排序规则分配为数据库的排序规则。不能对数据库快照指定排序规则名称。不能使用FORATTACH或FORATTACH_REBUILD_LOG子句指定排序规则名称。有关如何更改附加数据库的排序规则的信息,请访问此Microsoft网站。有关Windows和SQL排序规则名称的详细信息,请参阅COLLATE(Transact-SQL)。注意包含数据库的排序方式不同于非包含数据库。有关详细信息,请参阅包含数据库的排序规则。WITH仅在将CONTAINMENT设置为PARTIAL之后,才允许使用以下选项。如果将CONTAINMENT设置为NONE,将发生错误。NON_TRANSACTED_ACCESS={OFF|READ_ONLY|FULL}指定对数据库的非事务性FILESTREAM访问的级别。USEmaster;GOCREATEDATABASEmytest;GO--,size,size*1.0/128AS[SizeinMBs]FROMsys.master_filesWHEREname=N'mytest';GOUSEmaster;GOCREATEDATABASEmytest;GO--,size,size*1.0/128AS[SizeinMBs]FROMsys.master_filesWHEREname=N'mytest';GOB.创建指定数据和事务日志文件的数据库下面的示例将创建数据库Sales。因为没有使用关键字PRIMARY,第一个文件(Sales_dat)将成为主文件。因为在Sales_dat文件的SIZE参数中没有指定MB或KB,将使用MB并按MB分配。Sales_log文件以MB为单位进行分配,因为SIZE参数中显式声明了MB后缀。USEmaster;GOCREATEDATABASESalesON(NAME=Sales_dat,FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf',SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=Sales_log,FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf',SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB);GOUSEmaster;GOCREATEDATABASESalesON(NAME=Sales_dat,FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf',SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=Sales_log,FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf',SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB);GOC.通过指定多个数据和事务日志文件创建数据库以下示例创建数据库Archive,该数据库具有三个100-MB数据文件和两个100-MB事务日志文件。主文件是列表中的第一个文件,并使用PRIMARY关键字显式指定。事务日志文件在LOGON关键字后指定。请注意用于FILENAME选项中各文件的扩展名:.mdf用于主数据文件,.ndf用于辅助数据文件,.ldf用于事务日志文件。此示例将数据库放置于D:驱动器上,而非master数据库中。USEmaster;(NAME=Arch1,FILENAME='D:\SalesData\archdat1.mdf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch2,FILENAME='D:\SalesData\archdat2.ndf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch3,FILENAME='D:\SalesData\archdat3.ndf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20)LOGON(NAME=Archlog1,FILENAME='D:\SalesData\archlog1.ldf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Archlog2,FILENAME='D:\SalesData\archlog2.ldf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20);GOUSEmaster;(NAME=Arch1,FILENAME='D:\SalesData\archdat1.mdf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch2,FILENAME='D:\SalesData\archdat2.ndf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Arch3,FILENAME='D:\SalesData\archdat3.ndf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20)LOGON(NAME=Archlog1,FILENAME='D:\SalesData\archlog1.ldf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20),(NAME=Archlog2,FILENAME='D:\SalesData\archlog2.ldf',SIZE=100MB,MAXSIZE=200,FILEGROWTH=20);GO
‘肆’ 怎么判断sql文件的编码格式
文件的字符集在Windows下有两种,一种是ANSI,一种Unicode。
对于Unicode,Windows支持了它的三种编码方式,一种是小尾编码(Unicode),一种是大尾编码(BigEndianUnicode),一种是UTF-8编码。
我们可以从文件的头部来区分一个文件是属于哪种编码。当头部开始的两个字节为 FF FE时,是Unicode的小尾编码;当头部的两个字节为FE FF时,是Unicode的大尾编码;当头部两个字节为EF BB时,是Unicode的UTF-8编码;当它不为这些时,则是ANSI编码。
按照如上所说,我们可以通过读取文件头的两个字节来判断文件的编码格式,代码如下(C#代码):
程序中System.Text.Encoding.Default是指操作系统的当前 ANSI 代码页的编码。
public System.Text.Encoding GetFileEncodeType(string filename){ System.IO.FileStream fs = new System.IO.FileStream(filename, System.IO.FileMode.Open, System.IO.FileAccess.Read); System.IO.BinaryReader br = new System.IO.BinaryReader(fs); Byte[] buffer = br.ReadBytes(2); if(buffer[0]>=0xEF) { if(buffer[0]==0xEF && buffer[1]==0xBB) { return System.Text.Encoding.UTF8; } else if(buffer[0]==0xFE && buffer[1]==0xFF) { return System.Text.Encoding.BigEndianUnicode; } else if(buffer[0]==0xFF && buffer[1]==0xFE) { return System.Text.Encoding.Unicode; } else { return System.Text.Encoding.Default; } } else { return System.Text.Encoding.Default; }}
‘伍’ 什么是sql 代码
sql代码是用代码操作数据库,从数据库里把数据取出来,加进去。
‘陆’ sql如何把表的定义以文件形式保存在磁盘上,求代码,谢谢大佬
一般的sql管理器都可以把数据库导出为sql语句。sql语句就是文件形式了。
如果你想再稍微美化,成比如excel表格,那可能需要一定代码。
‘柒’ 我导入sql文件代码显示1064错误,不知道哪里有问题帮忙找一下原因
如果我没有猜错的话 你的 sql文件应该是 utf-8 编码的 且 文件头带有 BOM
估计你是用 WINDOWS 自带的记事本编辑过
可以用 ultraEdit 等文字编辑器把 BOM 去掉 再试试
‘捌’ SQL数据库用代码创建 怎么创建
在MySQL中的数据库实现成包含对应数据库中表的文件的目录。因为数据库在初始创建时没有任何表,CREATE
DATABASE语句只是在MySQL数据目录下面创建一个目录。
你也可以用mysqladmin创建数据库。
DROP
DATABASE删除数据库中的所有表和数据库。要小心地使用这个命令!
DROP
DATABASE返回从数据库目录被删除的文件的数目。通常,这3倍于表的数量,因为每张表对应于一个“.MYD”文件、一个“.MYI”文件和一个“.frm”文件。
在MySQL
3.22或以后版本中,你可以使用关键词IF
EXISTS阻止一个错误的发生,如果数据库不存在。
你也可以用mysqladmin丢弃数据库。
(8)sql文件代码扩展阅读:
SQL是Structured
Query
Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。
SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(base
table);存储模式(内模式)称为“存储文件”(stored
file);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。
参考资料:搜狗网络:SOL数据库.
‘玖’ 如何用代码创建SQL数据库文件(最好有解释)
drop database databasenamecreate database databasename
on
primary //是主文件
(
name='employee1', //逻辑名称
filename='E:..', //存放位置
size= 10M, //初始大小
filegrowth =10%, //增长率
maxsize = 1G, //最大值
),
(
name='employee1',
filename='E:..',
size= 3M,
filegrowth =20%,maxsize = 1G,
),(
name='employee1',
filename='E:..',
size= 3M,
filegrowth =2m,
maxsize = 1G,
)
不懂可以和我说。。