SQL
爱知菜
Renjie Wei
展开
-
mysql 对有自增主键的表插入csv数据
比如自增数据让它自然增长,但是其他列用csv的内容,怎么写?可以在SQL最后指明插入列的列表。示例:load data local infile 'yige.csv' into table some_tablenamefields terminated by ',' lines terminated by '\n'(store_id,statistics_date,epay_customer_cnt,scan_customer_cnt,total_trans_cnt, ...原创 2021-05-25 17:09:32 · 556 阅读 · 1 评论 -
linux 命令行连接 PostgreSQL
linux下连接PostgresSQL的命令行工具是 “psql”在这个页面获取下载安装的命令行:https://www.postgresql.org/download/linux/redhat/头两行都要运行,先装repo,再装postgresql-sever安装后就可以运行psql。psql连接语句示例:(启用SSL)psql "sslmode=verify-full sslrootcert=/path/of/cert host=host.ip dbname=dbname us原创 2020-12-01 18:33:04 · 8442 阅读 · 0 评论 -
Linux 服务器上 配置 Oracle 客户端和sqlplus
本文针对Oracle12c在Linux上用命令行访问Oracle数据库要装两个东西一个是Client, 一个是Sqlplus。Client是类似驱动的东西,Sqlplus则是sql的输入界面(CLI)Oracle 12的下载在这里:https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html以zip安装包为例解压缩到某个目录后,就是要配置一个配置文件和环境变量了参考:原创 2020-11-30 17:40:59 · 533 阅读 · 0 评论 -
mysql utf-8中文乱码
mysql utf-8中文乱码,服务器上配置了“character_set_server | latin1 ”, 怎么办?可以在见表的时候指定表的字符编码。create table wechat_report(report_id bigint not null auto_increment,date_id int,ver_id int,open2all int,html_report longtext,primary key (report_id) )ENGINE=InnoDB..原创 2020-11-04 14:22:31 · 372 阅读 · 0 评论 -
SQL varbinary, substring, char to binary,fn_dblog 以及 log 中的 binary 杂记
binary/varbinary 在显示的时候以16进制显示, 比如 "0x010f"注意显示的结果的位数必定是偶数个 比如"0x11","0x22CC", 不会有 "0x123", 因为varbinary的单位是字节, 而一个字节就是两位的16进制数.下面两个函数可以把binary/varbinary倒叙排列:create function [dbo].[f_reverseBinary](@s ...原创 2017-09-22 13:29:02 · 740 阅读 · 0 评论 -
SQLSERVER CDC 功能
CDC 总结原创 2017-08-30 17:24:00 · 896 阅读 · 0 评论 -
SQL 优化实例
将两张表要 join 的几个字段组合成一个 varchar类型的 字符串, 放到临时表里, 临时表可以带有索引, 再去joinCREATE TABLE #Remove_Plan_Detail (ID BIGINT IDENTITY(1,1) PRIMARY KEY NOT NULL ,Plan_Detail_ID BIGINT) CREATE INDEX ix_Plan_D原创 2017-08-30 15:03:59 · 253 阅读 · 0 评论 -
Derby 初探
先装Java 这里不再赘述下载Derby配置环境变量: (%DERBY_HOME%就是下载后的解压目录)在Path加入:%DERBY_HOME%\bin 在CLASSPATH加入:%DERBY_HOME%\lib \derby.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbytools.jar;%D原创 2017-09-05 15:31:16 · 249 阅读 · 0 评论 -
SQLSERVER 查询 query 执行状况
CXPACKETsys.dm_exec_requests原创 2017-08-18 19:20:11 · 2124 阅读 · 0 评论 -
T-SQL with execute clause 的研究
比如有两个用户A 和 用户B根据需求A用户有浏览某张表的权限, 而对B, 只想让他有浏览表中部分列部分行的权限一个做法就是设置不让B访问表, 但是给B执行某个存储过程的权限, 通过这个存储过程B能够访问表代码如下: CREATE PROCEDURE [dbo].[somesp] ASBEGIN select top 100 * from sometableENDG...原创 2017-09-04 15:01:29 · 336 阅读 · 0 评论 -
开窗函数
over()partition bylead lag first_value last_value原创 2016-07-21 17:26:23 · 1102 阅读 · 0 评论 -
SQLCMD and the power of the little r
I would have to say that one of my favorite new utilities that shipped with SQL Server 2005 has been the SQLCMD utility. I am going to demonstrate the use of include files. The following is the com转载 2018-02-02 15:30:20 · 229 阅读 · 0 评论 -
查sqlserver版本信息, 实例名, 服务器名以及SP,trigger等object的定义,列出表名
select @@serviceNAME select @@version select @@SERVERNAME查询某段SP, trigger的定义select triggers.name as [触发器],tables.name as [表名],triggers.is_disabled as [是否禁用],triggers.is_instead_of_trigge转载 2017-07-03 14:39:32 · 1481 阅读 · 0 评论 -
Azure SQL database 跨库查询 以及 sqlserver login&user关系
Azure SQL database和普通的sqlserver 最大的区别是一个数据库就是一个instance, 这样给跨库查询带来了很多不便, 但是仍可以通过external table这种方式来实现. 下面说下步骤1. 为你的数据库添加一个 master key, 用于加密下一步中需要的 credentialCREATE MASTER KEY ENCRYPTION BY PASSWORD = ...原创 2018-02-26 16:35:23 · 772 阅读 · 0 评论 -
tSQLt 数据库的单元测试框架
单元测试在软件开发中很常见, 其特点是不侵入现有代码但能和现有代码融为一体,覆盖到每一个功能单元.在数据库领域好的测试框架非常少见, tSQLt正是为数不多的其中之一. tSQLt 继承了单元测试的理念, 比如平时我们要测试数据库的时候, 数据库的表往往有很多外键关联, 如果要为测试添加测试数据, 就必须加入很多不必要的数据以满足外键关联或者把外键去掉, 很不方便. tSQLt提供一个Fake原创 2018-02-07 15:43:43 · 1033 阅读 · 0 评论 -
使用命令行部署 sqlserver dacpac 文件
"C:\Program Files (x86)\Microsoft SQL Server\110\DAC\bin\SqlPackage.exe" /TargetServerName:"localhost" /SourceFile:"database.dacpac" /TargetDatabaseName:ODS_Stage /Action:Publish /Variables:varInstanc...原创 2018-03-23 14:57:55 · 1185 阅读 · 0 评论 -
遍历所有表 自动更新索引信息
USE SomeDb --modifySET NOCOUNT ONGODECLARE updatestats CURSOR FORSELECT table_schema, table_name FROM information_schema.tables where TABLE_TYPE = 'BASE TABLE' AND table_Name not like 'VW_B%...转载 2018-07-16 12:28:54 · 246 阅读 · 0 评论 -
SQL Server 2016 Always Encrypted 解析
首先最好的文档在微软的网站:https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/always-encrypted-database-engine?view=sql-server-2017always encrypted 有两种方式, 一种是deterministic 和 randomized. ...原创 2018-07-11 12:57:08 · 1124 阅读 · 0 评论 -
Oracle 和 AWS Redshift 获取 数据库所有表名和列名的
Oracle表名区分大小写。select table_name from user_tables where table_name like '%xxxxx%';select OWNER, TABLE_NAME, COLUMN_NAME from all_tab_columns where COLUMN_NAME LIKE '%xxxxx%'; AWS Redshift...原创 2018-11-19 11:20:30 · 1955 阅读 · 0 评论 -
impala 更新元数据 以及 用impala对复杂类型的列 查询
impala是MPP型数据库, 支持HIVE 和 S3 作为底层存储.impala 刷新元数据impala 能从Hive的metastore里获取表结构的元数据, 但是并不能感知 hive 的改动, 所以如果hive的表结构发生了改动需要手动来刷新 impala 缓存的元数据.刷新方式有两种: INVALIDATE METADATA sometable;REFRESH som...原创 2019-02-02 17:40:46 · 2448 阅读 · 0 评论 -
MySql Workbench 快捷键配置示例(F5执行)
转自: http://blog.csdn.net/stableboy/article/details/45887035C:\Program Files\MySQL\MySQL Workbench 6.3 CE\data, 找到文件 main_menu.xml修改执行 = F5 com.mysql.wb.menu.query转载 2017-07-06 15:32:17 · 910 阅读 · 0 评论 -
sqlserver 事务和锁
斜体部分是本人注:结合SQL的 WAITFOR DELAY '00:00:05'可以自己实验锁和事务隔离级别是两个不同的概念, 锁是更加具体的手段去实现了各个不同的事务级别. 事务事务隔离级别:1、Read Uncommitted(读取其他事务未提交内容)在该隔离级别中,所有事务可以看到其他未提交事务的执行结果。本级别隔离很少用于实际应用,比其他隔离级别性能...转载 2017-04-25 00:44:03 · 394 阅读 · 0 评论 -
SSIS PACKAGE excute sql task 选 single row 模式的一个bug
如果源数据的某列是 nvarchar 的话, 无法赋值给变量,汇报 dbnull 错误要 cast 成 var原创 2014-04-04 17:58:47 · 1020 阅读 · 0 评论 -
python 使用 adodbapi 连接mssql2005的连接字符串
装adodbapi前一定要装 pywin32 这个库连接字符串 示例:Provider=SQLOLEDB.1;Data Source=127.0.0.1;Initial Catalog=DataWarehouse;Persist Security Info=True;User ID=sa;Password=1原创 2013-06-06 15:27:58 · 2013 阅读 · 0 评论 -
C# 连接 Sqlserver2005 Analysis Service的总结
首先要下载一个 ADOMD.net 的组件,这个组件封装了对多维数据集的访问。下载连接:http://pan.baidu.com/share/link?shareid=3272425634&uk=268671865安装完了可以在 X:\Program Files\Microsoft.NET\ADOMD.NET\90 下找到 Microsoft.AnalysisServices.AdomdC原创 2013-09-11 16:44:20 · 1812 阅读 · 1 评论 -
sqlserver是用触发器来实现 insert 后 返回自增 行的id号
CREATE TRIGGER DimGeography_Insert ON dbo.DimGeography FOR INSERT ASSELECT @@IDENTITYGO如上所示:我创建了一个 名为 DimGeography_Insert 的触发器, 专门处理DimGeography 的 INSERT 操作 , 返回自增ID原创 2013-07-30 10:27:13 · 5279 阅读 · 2 评论 -
Mysql5.0没有nvarchar,national varchar就是varchar
mysql采用utf-8编码,而传统的数据库采用unicode,一个汉字要用两个unicode的char,而在mysql中由于使用了utf-8,所以无论汉字还是字母,都是一个长度的char,所以就不用分nvarhcar和varchar了,一律作varchar原创 2012-09-07 10:22:12 · 9646 阅读 · 0 评论 -
MYSQL 5.5 最新版 报 10061错误,连不上server的解决办法
网上有很多方法在命令行中执行,这是有前提的,必须将mysql的server/bin文件夹的路径添加到系统环境变量,否则会报 '不是内部或外部命令' 这样的错误比如我的mysql安装在E:\Program Files\MySQL,我的mysql版本是5.5,所以server文件夹就是E:\Program Files\MySQL\MySQL Server 5.5,注意不能直接添加这个文件夹原创 2012-08-21 14:02:00 · 3936 阅读 · 0 评论 -
powerdesginer 生成数据库时没有外键关联的 解决办法
http://kaminlee.iteye.com/blog/1047996总之就是在PDM的每个reference的属性设置里Integrity标签下,设置Update constraint和Delete constraint为None,然后把Implentment下拉框设置为Declarative转载 2012-08-21 11:02:33 · 1139 阅读 · 0 评论 -
数据库里char nchar varchar nvarchar的认识
首先是容量char(2) 两个字母或一个汉字nchar(2) 两个字母或两个汉字由此看出没有n的情况下一位=8bit,有n的话一位=16比特=两个字节var的意思,可变,在char中如果内容小于给定的储存空间,会自动填满存储空间,而var是能省则省原创 2012-05-24 16:01:48 · 809 阅读 · 0 评论 -
sqlserver备份DB的windows permission问题
运行services.msc找到sqlserver所在服务原创 2014-06-10 10:22:15 · 741 阅读 · 0 评论 -
sql 中charindex 和 replace的用法
这两个常用函数都有3个参数:charindex(整个):参数1:原创 2014-08-22 10:10:36 · 1080 阅读 · 0 评论 -
shrink log和查询数据库 backup,restore,shrink 进度 和 还原历史 的sql (for sqlserver)re
SELECT DB_NAME(er.[database_id]) [DatabaseName],er.[session_id] AS [SessionID],er.[command] AS [CommandType],est.[text] [StatementText],er.[status] AS [Status],CONVERT(DECIMAL(5, 2), er.[percent原创 2015-04-29 17:19:00 · 3180 阅读 · 0 评论 -
SSIS SSAS 的优化手段总结
SSIS SSAS 预聚合 非重复计数度量值 执行树 分区转载 2017-04-22 21:57:51 · 4001 阅读 · 0 评论 -
数据库范式, 数据仓库设计架构Kimball 和 Inmon 杂记
Inmon Kimball 建模 范式原创 2016-04-21 12:10:20 · 3079 阅读 · 0 评论 -
T-sql 查询系统表 获取所有对象的定义sql语句
SELECT DISTINCT o.name AS Object_Name, o.type_desc FROM sys.sql_modules m INNER JOIN sys.objects o ON m.object_id = o.object_id WHERE m.definition Like '%/15/%'原创 2016-11-23 14:40:18 · 1655 阅读 · 0 评论 -
SQL table compression type difference
Since SQL2008:行级压缩(Row): 一方面减少了动态长度字段元数据的大小(varchar、varbinary等),比如之前存储字段实际长度需要2bytes,压缩后只需要3bits。 另一方面也直接减少各字段存储内容的大小,比如存储数值1在一个int类型字段中,压缩后只占用了一个字节。 页级压缩(Page):先做Row能在各行间共享相同的数据,这里面包含两项转载 2016-11-17 14:49:41 · 421 阅读 · 0 评论 -
T-SQL 查询sqlserver服务器的时区
DECLARE@TimeZone NVARCHAR(255)EXECmaster.dbo.xp_instance_regreadN'HKEY_LOCAL_MACHINE',N'SYSTEM\CurrentControlSet\Control\TimeZoneInformation',N'TimeZoneKeyName',@TimeZoneOUTPUTSELECT@Time转载 2016-10-12 12:52:55 · 7798 阅读 · 0 评论 -
利用 T-sql 的从句 for xml path('') 实现多行合并到一行, 并带有分隔符
T-sql 有一个for xml path('')的从句能把多行结果合并到一行,并成为xml 格式比如有一张表tb,其格式和数据为:id value—————1 aa1 bb2 aaa2 bbb2 ccc如果对其执行sql: select id, value from tb for xml path('tbnode')则返回的结果集仅为一行一列:转载 2016-02-23 15:35:36 · 8244 阅读 · 0 评论 -
Cube process 或者 deploy 时发生数据库因权限问题无法连接的解决办法
首先在服务里找到 SSAS 的 登录名比如: NT Service\MSSQLServerOLAPService然后在相应的数据中为这个登录名添加read的权限http://blogs.solidq.com/en/businessanalytics/how-to-resolve-connection-errors-when-loading-data-in-ssa原创 2016-03-08 16:47:26 · 950 阅读 · 0 评论