SQLSERVER数据库、表的创建及SQL语句命令版(二)
SQL Server数据库文件恢复技术yzhshi(yzhshi@tang.com)sqlserver数据库备份有两种方式:1.使用命令:backupdatabase,备份数据库文件;2,直接复制数据库文件MDF和日志文件。下面将讨论后者的备份和恢复。 本文假设您可以使用SQLServerenterPriseManager(SQLServer Enterprise Manager)和SQLServerquWeyanAlySer(SQLServer查询分析器)正常备份,恢复模式在正常模式下,我们必须备份数据库,首先从正在运行的数据服务器中断数据库,或停止整个数据库服务器,然后复制文件。删除数据库命令:sp_detach_db要连接到数据库命令的数据库名称:sp_attach_db或sp_attach_single_file_dbs_attach_db [@dbname =]’dbname’,[@ filename1 =]’filename_n'[,… 16] sp_attach_single_file_db [@dbname =]’dbname’,[physname’ =]“photical_name”使用此方法正确恢复SQLSever7.0和SQLServer2000数据库文件,您必须备份MDF和LDF文件,MDF文件是数据库数据文件,而LDF是数据库日志文件。7. SQL命令创建数据库和数据表1.删除新表:droptabletable_name;2.创建视图:createviewviewnamememelitt;例1:创建View view_name 01(愚蠢,惊人,苏塞克斯,存储)作为一个SelectStuid,惊人,STUSEX,StuageFromstudentWherestuage> = 25;其中,字段列的红色部分必须是相同的。如在第二实施例中那样,不考虑(更常见)。createviewView_name02。作为一个SelectStuid,惊人,STUSEX,StuageFromstudentWherestuage> = 25;查看视图:选择* fromview_name;3,删除视图:4.创建索引:5,删除索引:8.通常创建了几种类型的数据表:不是独特查看第一个钥匙外国人1,notnull。不允许空值表示字段的值。例如:2,独特表示字段的值,不允许重复例如:3,检查检查字段的值,您必须满足某些条件4,主要关键每个主键都是表中的唯一值。添加主键SQL命令(注意:选择主键的列,必须有一个值):创建数据表时主密钥的不同方式:mysql:Oracle:SQLSERVER:删除主键的SQL语句:语法:Alter表名DRUP约束主键约束名称(现场名称)如:5,外键外部按钮是另一个数据表主密钥的字段(或多个)。 外键函数是确定信息的参考完整性,以限制输入(参见文章)。 换句话说,只有允许的值将存储在数据库中。创建外键的命令操作:如下所述,更改表需要创建外部键表addConstraint外键名称外键参考,外键表(外键字段);以下是在构建订单表格时指定外国债券的方法:外键reg_id,指向主键RegionID。mysql:Oracle:SQLSERVER:以下示例正在更改表体系结构以指定外键。 在这里,假设已建立订单表单,并且尚未指定外键:mysql:Oracle:SQLSERVER:删除外键SQL命令:更改表名称丢弃约束对外承诺名称(现场名称);如:6,改变。更改表结构的方式:1,添加字段2.删除字段3,更改字段名称(此命令sqlserver数据库,不可用)4.更改字段类型(此命令sqlserver数据库,不可用)新安装的SQL Server 2008将打开在SQLServer 2008中创建的表。现在我想添加一些字段,当保存时,提示错误,无法保存。它与SQL Server 2008和2005不兼容,后面发现SQL Server 2008中的新表无法修改表结构,即无法修改字段名称,并且添加字段名称。提示不允许更改。 您所做的是删除并重新创建下表。 您已更改或启用更改更改选项,可以从无法重新创建的表中阻止无法重新创建的更改选项。屏幕截图以下:解决方案:启动MSSQLSERVER2008,选择菜单工具 – >选项 – >左侧有设计师 – >表设计器和数据库设计器。 然后删除“重新创建更改更改为表”。 重新启动MSSQLServer 2008.如下所示:九,SQL数据库字段类型详细信息SQL语句:首先,DML数据操作语言SQL命令分为:选择查询,插入索引,DeleteFrom Delete,UpdateSet修改。最复杂的,有很多方法可以使用1.查询表中的所有数据选择* windtable_name;2,普通条件(或)查询选择*或字段1,字段2,… windtable_namewhere字段1 =值1或字段2 =值2 …检查一系列薪水SelectStore_NameFromStore_InformationWherfromStore_InformationWhereSamStore> 1000(工资<500Andsalary> 275);3,模糊条件(如)选择*或字段1,字段2,… windtable_namewhere字段1like%a%; 包含A.的字符选择*或字段1,字段2,… windtable_namewhere字段1likea%; 人物和开始选择*或字段1,字段2,… windtable_namewhere字段1like%a; 性格结束选择*或字段1,字段2,… windtable_namewhere字段1like’_汉字_’; 下一行,代表一个字符,总共四个字符选择*或字段1,字段2,… windtable_namewhere字段1like’%汉字%’;%表示无限的字符4,空值(null)选择*或字段1,字段2,… windtable_namewhere字段1inotnull;5,范围查询一个(IN)选择*或字段1,字段2,… windtable_namewhere字段1in(1,2,3,……)或(’质量’,’数字’,…)……; – 字段值可以是数字或字符类型6,范围查询2(…和……选择*或字段1,字段2,… windtable_namewhere字段1between10and100;选择*或字段1,字段2,… windtable_namewhere字段1between’1990-01-01’and’2012-12-31′;7,排序查询(Orderby … ASC / DESC通常组合)8,计数统计记录编号查询SelectCount(字段1或字段2,…)[别名a …] windtable_name; [[通常不会与其他字段组合,否则将报告错误,稍后可以添加名称][加上条件“iSnotnull”,过滤掉空数据][与其他字段查询,使用groupby“field a”使用,必须匹配groupby与“字段a”匹配,字段b不能相同,因此它只能是集合函数,或者使用与groupby相同的字段 配置名称]9,寻求和匹配字段必须是数字类型。[与其他字段查询,使用groupby“field a”使用,必须匹配groupby与“字段a”匹配,字段b不能相同,因此它只能是集合函数,或者使用与groupby相同的字段 配置名称]10,最大总额和匹配字段必须是数字类型。[与其他字段查询,使用groupby“field a”使用,必须匹配groupby与“字段a”匹配,字段b不能相同,因此它只能是集合函数,或者使用与groupby相同的字段 配置名称]11,极简主义和匹配字段必须是数字类型。[与其他字段查询,使用groupby“field a”使用,必须匹配groupby与“字段a”匹配,字段b不能相同,因此它只能是集合函数,或者使用与groupby相同的字段 配置名称]12,AVG寻求平均值selectavg(字段1,或字段2,…)fromtable_name;和匹配字段必须是数字类型。[与其他字段查询,使用groupby“field a”使用,必须匹配groupby与“字段a”匹配,字段b不能相同,因此它只能是集合函数,或者使用与groupby相同的字段 配置名称]13,具有过滤器组查询那么我们如何将值设置为函数? 例如,我们可能只需要知道哪个商店超过1,500美元。 在这种情况下,我们无法使用使用指令的位置。 我应该怎么办? 幸运的是,SQL有一个指导,我们可以使用此指示来实现这一目标。通常在SQL句子的最后一句中的患有子句。包含子句的SQL不必包含GroupBy子句。语法所拥有的如下:选择(字段1,或字段2,…)fromtable_namegroupby <字段1,或字段2,...>具有 转载于天翼云知识,如有侵权,请联系删除,谢谢