🗒️SQL Server

type
status
date
slug
summary
tags
category
icon
password
😀
这里写文章的前言: 一个简单的开头,简述这篇文章讨论的问题、目标、人物、背景是什么?并简述你给出的答案。
可以说说你的故事:阻碍、努力、结果成果,意外与转折。
 

📝 主旨内容

清理日志文件的方法

操作步骤

1. 将恢复模式改成“简单”
右键数据库 - 属性,切换到选项,将恢复模式修改为简单
notion image
2. 收缩日志
右键数据库 - 任务 - 收缩 - 文件
notion image
确定后会发现,日志文件被迅速清理。
3. 命令操作

排序规则修改为二进制

排序规则和 Unicode 支持 - SQL Server
适用于: SQL Server(所有支持的版本) Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics 是并行数据仓库 SQL Server 中的排序规则可为您的数据提供排序规则、区分大小写属性和区分重音属性。 与诸如 char 和 varchar 等字符数据类型一起使用的排序规则规定可表示该数据类型的代码页和对应字符 。 无论你是要安装 SQL Server 的新实例、还原数据库备份,还是将服务器连接到客户端数据库,都必须了解正在处理的数据的区域设置要求、排序顺序以及是否区分大小写和重音。 若要列出在 SQL Server的实例上可用的排序规则,请参阅 sys.fn_helpcollations (Transact-SQL) 。 为服务器、数据库、列或表达式选择排序规则时,同时也是在向数据分配某些特征。 这些特征会影响数据库中许多操作的结果。 例如,使用 ORDER BY 构造查询时,结果集的排序顺序可能取决于应用于该数据库的排序规则或 COLLATE 子句中在查询的表达式级别规定的排序规则。 为了充分利用 SQL Server中的排序规则支持,应了解本主题中所定义的术语以及这些术语与数据的特征之间的关系。 排序规则指定表示数据集中每个字符的位模式。 排序规则还确定数据的排序和比较规则。 SQL Server 支持在单个数据库中存储具有不同排序规则的对象。 对于非 Unicode
排序规则和 Unicode 支持 - SQL Server
SQL Server 中的二进制排序规则定义了所使用的区域设置和 ANSI 代码页。 这将强制使用二进制排序顺序。 由于它们相对简单,因此二进制排序规则有助于提高应用程序性能。 对于非 Unicode 数据类型,数据比较将基于 ANSI 代码页中定义的码位。 对于 Unicode 数据类型,数据比较将基于 Unicode 码位。
 
安装时可更改排序规则
notion image

SQL语句

1、连接sqlserver
sqlcmd -S localhost\sqlserver_name
2、连接数据库
sqlcmd -S localhost\sqlserver_name -d database_name
3、执行SQL语句
sqlcmd -S localhost\sqlserver_name -d database_name -Q "SELECT * FROM [table_name]"
4、执行SQL脚本文件
sqlcmd -S localhost\sqlserver_name -d database_name -i "SQL file path"
5、将查询的结果集输出到文件
sqlcmd -S localhost\sqlserver_name -d database_name -o "file path"
6、输出的结果集字符较长,输出到控制台和文本都不能显示完全,需要再加一个参数
sqlcmd -S localhost\sqlserver_name -d database_name -y 1024 -Q "SELECT * FROM [table_name]"
-- 注:此处的“-y”后面的值可以更改,如果还是不能完全显示,将数值再改大一点
7、备份数据库
sqlcmd -S localhost\sqlserver_name
backup database database_name to disk='E:\backup\database_name.bak'
go
8、恢复数据库
1)先查询数据库是否存在,存在就删除
a. 查询数据库
> sqlcmd -S localhost\sqlserver_name
> select [Name] from [sysdatabases]
> go
b. 删除数据库
> drop database database_name
2)恢复数据库,在进入实例服务的情况下(即sqlcmd -S localhost\sqlserver_name)执行以下语句:
9、查询数据文件或日志文件当前存放路径
SELECT physical_name FROM sys.database_files
10、with grant option 表示该用户可以将自己拥有的权限授权给别人
数据库添加用户语句:
grant all privileges on testdb.* to ‘test_user’@’localhost’ identified by 'jack' with grant option;
WITH GRANT OPTION 这个选项表示该用户可以将自己拥有的权限授权给别人。注意:经常有人在创建操作用户的时候不指定 WITH GRANT OPTION 选项导致后来该用户不能使用 GRANT 命令创建用户或者给其它用户授权。

TDS协议

简单来说ODBC驱动,TDS协议,用于连接数据库的,比如SQL Server
FreeTDS 是对 Sybase 和 Microsoft SQL Server 最初销售的 C 库的重新实现。它允许许多开源应用程序(例如 Perl 和 PHP)(或您自己的 C 或 C ++ 程序)连接到 Sybase 或 Microsoft SQL Server。
FreeTDS 为以下产品提供了替代产品
  • Sybase DB-Library和CT-Library
  • 微软的DB-Library(在细节上与 Sybase 的不同)
  • ODBC两家供应商的驱动程序
  • 交互式 SQL 和 BCP 实用程序
名称的 “ TDS ” 部分来自用于与此类服务器进行通信的协议的名称:表格数据流。
FreeTDS 以源代码形式分发,并且有望在几乎所有操作系统上进行编译。这意味着每种形式的 Unix® 和类 Unix™系统(包括著名的变体,例如 Interix® 和 QNX®)以及 Win32®,VMS® 和 OSX®。如果它不能在您的系统上编译 - 并且您没有使用 MS-DOS®- 则可能被认为是一个错误。

什么是 FreeTDS

简单的说 FreeTDS 是一个程序库,可以实现在 Linux 系统下访问微软的 SQL 数据库! FreeTDS 是一个开源(如果你喜欢可以称为自由)的程序库,是 TDS(表列数据流 )协议的再次实现。它可以被用在 Sybase 的 db-lib 或者 ct-lib 库。它也包含一个 ODBC 的库。允许许多开源的应用软件比如 Perl 和 PHP (或者你自己的 c 或 C++ 程序) 去连接到 Sybase 或 Microsoft SQL 服务器。FreeTDS 以源码的形式被发布,几乎可以在任何操作系统上编译。意味着 Unix 和类 Unix 系统(包括著名的分支如 Interix 和 QNX),还有 Win32,VMS, 和 OSX。

安装sql报错Invoke or Begininvoke cannot be called on a control until the window handle has been created.o

无法对控件调用invoke或Beginivoke
 
对安装程序使用以管理员身份运行即可
 

将sql中的某张表结构生成脚本

可以将sql中某个数据库所有表生成一个脚本
notion image
根据需求对某个库还是某张库进行操作
notion image
数据库生成脚本
notion image
某张表生成脚本
notion image
notion image
注意:这里又分生成单个文件,还是整合成一个脚本

sql server 存储过程传递表名参数

解析
示例:根据传参名表建表
示例:创建多张表
如何使用
注意

🤗 总结归纳

总结文章的内容

📎 参考文章

  • 一些引用
  • 引用文章
 
💡
有关Notion安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
WindowsOptimization
Loading...
目录