技术探索
  • 如何用sql语句附加原有数据库到Azure Sql Edge数据库服务器

    2022-10-13
    120
    MSSQL数据库
    利用docker装了Azure Sql Edge数据库(数据文件映射到物理目录),但无法在SSMS中附加原来的数据库,只能通过如下方式用sql语句附加。1、查看Azure Sql Edge服务器上master数据库保存位置,并记下数据库目录(如:/var/opt/data/master.mdf)select [type_desc],[name],[physical_name] from [sys].[database_files]2、将要附加的数据库文件上传到上面记录的数据库目录(如上:/var/opt/data/),如果是映射到物理目录,则上传到该物理目录 包括所有的数据库文件,如:mydata.mdf、mydata_log_ldf、mydata_other.ndf 等3、输入并执行命令:CREATE DATABASE [mydata]ON (FILENAME = '/var/opt/d
  • 在MSSQL中使用C#创建的程序集相关问题

    2021-12-30
    148
    MSSQL数据库
    /*允许程序使用外部程序集*/EXEC sp_configure 'clr enabled', 1RECONFIGURE WITH OVERRIDE/*产生hash签名*/DECLARE @hash AS BINARY(64) = (SELECT HASHBYTES('SHA2_512', (SELECT * FROM OPENROWSET (BULK 'D:\Function.SQL.dll', SINGLE_BLOB) AS [Data])))/*加入信任程序集*/exec sp_add_trusted_assembly @hash/*查看已添加的信任程序集*/select * from sys.trusted_assemblies/*删除信任程序集*/declare @hash2 BINARY(64)=0x000000exec sp_drop_trusted_assembly @ha
  • MSSQL出故障后无法启动如何重建系统数据库?

    2015-01-02
    692
    MSSQL数据库
    当mssql系统数据库出现问题(如master),导致无法启动时,可以使用以下命令重建系统数据库。重建完成后再重新创建数据库用户、附加或恢复用户的业务数据库。C:\ProgramFiles\MicrosoftSQLServer\100\SetupBootstrap\Release\setup.exe/q/action=rebuilddatabase/instancename=mssqlserver/sqlsysadminaccounts=admin/sapwd=sa参数说明:1)以恢复mssql2008为例2)instancename指定实例名称,如果是默认实例,填写为mssqlserver(本例)3)添加一个windows系统管理员账号,本例中为admin4)设置sa的密码,本例为sa5)执行完成后会返回到命令提示符6)执行完后别忘记启动mssql服务,然后再进行其他工作
  • 如何在 Sql Server 中添加数据时明确指定自增字段的值

    2014-09-14
    586
    MSSQL数据库
    如何在 Sql Server 中添加数据时显示指定自增字段的值?例表:createtable[dbo].[t_user]([userid]intidentity(1,1)uniquenotnull,[username]nvarchar(50)notnull)如上表,当向表中插入数据时,自增字段 [userid] 是按当前已有值自动增长的,可使用下面语句:insert[dbo].[t_user]([username])values('Join')语句执行后,[userid] 是自动生成的,如果插入前最大值是 5,那么执行该语句后就是 6。如果希望手动指定 [userid] 的值,比如原表中已有值是 1,3,4,5 ,希望插入一条后的 [userid] 为 2,那么上面的语句就不行了。应该怎么做呢?看如下语句:setidentity_insert[dbo].[t_user]on
  • mssql2008数据库镜像及自动故障转移的建立(步骤提纲)

    2014-03-09
    808
    MSSQL数据库
    以下是初始测试环境:操作系统:windows 2008 r2(主体服务器),windows 2008(镜像服务器),windows 2008(见证服务器)数据库:mssql 2008主体服务器ip: 192.168.0.14镜像服务器ip: 192.168.0.15见证服务器ip: 192.168.0.16严格按照以下顺序执行:一:创建证书1、在主体服务器上执行: 创建证书 创建端点 backup certificate host_a_cert to file='d:\host_a_cert.cer'2、在镜像服务器上执行: 创建证书 创建端点 backup certificate host_b_cert to file='d:\host_b_cert.cer'3、在见证服务器上执行: 创建证书 创建端点 backup certificate host_c_
  • 在 mssql 查询管理器显示执行时间等信息的方法

    2013-11-13
    1037
    MSSQL数据库
    如果要分析语句的执行效率,我们可以在 mssql 查询管理器中打开执行时间等信息显示,这样很方便地分析语句的执行效率情况,以便进行改进。/*显示分析、编译和执行查询所需的时间(以毫秒为单位)。*/setstatisticsprofileon/*报告与语句内引用的每个表的扫描数、逻辑读取数(在高速缓存中访问的页数)和物理读取数(访问磁盘的次数)有关的信息*/setstatisticsioon/*显示每个查询执行后的结果集,代表查询执行的配置文件*/setstatisticstimeon/*要执行的语句*/select*from[table]setstatisticsprofileoffsetstatisticsiooffsetstatisticstimeoff另外,也可以通过手工添加语句,计算执行时间来查看执行语句花费了的时间,以判断该条SQL语句的效率如何:declare@ddatetim
  • 有用的MSSQL语句(一)

    2013-09-27
    574
    MSSQL数据库
    本文介绍一些有用的MSSQL语句,虽然简单,但很实用,供需要时参考。1、添加主键 alter table [tablename] add primary key(col1)2、删除主键 alter table [tablename] drop primary key(col1)3、创建索引 create unique index [idxname] on [tablename](col1,col2)4、删除索引 drop index [idxname] 索引不能更改,只能删除后再重建5、union运算 union运算符通过组合其他两个结果表(如 table1 和 table2)并消去表中任何重复行而派生出一个结果表。当 all 随 union 一起使用时(即 union all),不消除重复行。6、except运算 except运算符通过包括所有在 table1 中但不在 table2 中
  • 使用SQL企业管理器创建数据表

    2013-05-24
    913
    MSSQL数据库
    先看看MSSQL中最常用的基本数据类型:int 整型varchar(n) 字符串,可以容纳n个英文字符或n/2个汉字nvarchar(n) 字符串,可以容纳n个英文字符或n个汉字bit bool值,固定值为0和1decimal(a,b) 小数,a表示总长度(整数部分+小数点+小数部分),b表示小数部分长度以上就是最常用的了,当然还有很它的类型,以后慢慢学习。----[dbo].[t_pd_category]----if(OBJECT_ID(N'[dbo].[t_pd_category]',N'U') is not null)drop table [dbo].[t_pd_category]gocreate table [dbo].[t_pd_category]([CategoryID] int identity(1,1) unique not null