Post by Goborijung at 2020-07-01 12:51:02 | ID: 647
Declare @ItemType nvarchar(100) = '1,2,3' Select * From Item Where ItemType IN (SELECT value FROM STRING_SPLIT(@ItemType, ','))
Post by Goborijung at 2020-06-17 15:25:19 | ID: 622
https://medium.com/@kosolponpasitwet/thai-ci-as-%E0%B8%84%E0%B8%B7%E0%B8%AD%E0%B8%AD%E0%B8%B0%E0%B9%84%E0%B8%A3-fc01ba28ecd0 THAI_CI_AS คืออะไร เป็น การตั้งค่าของ database ว่าจะใช้ภาษาอะไร ตัวอักษรตัวเล็กกับตัวอักษรตัวใหญ่ถือว่าเป็นตัวเดียวกันหรือไม่ และสนใจวรรณยุกต์ที่ใช้หรือไม่ กรณี THAI_CI_AS จะหมายถึง THAI = ภาษาไทย CI = Case Insensitive = ถือว่าตัวอักษรตัวเล็กกับตัวใหญ่เป็นตัวเดียวกัน AS = สนใจวรรณยุกต์ที่ใช้ สามัญ เอก โท ตรี จัตวา ถือว่าเป็นคนละตัวกัน จะเห็นผลอย่างไร เงื่อนไข WHERE col=’A’ จะได้ผลลัพท์ไม่ต่างจาก col=’a’ การเรียงลำดับด้วย ORDER BY จะเรียงลำดับตามวรรณยุกต์ที่ใช้ให้ จะรู้ได้อย่างไรว่าใช้ THAI_CI_AS อยู่หรือเปล่า ดูได้จาก Microsoft SQL Server Management Studio ดู Property ของ Database ตรงบรรทัด Collation จะมีบอกไว้อยู่
Post by Goborijung at 2022-04-06 06:37:19 | ID: 1449
-- การ Add Columns ใหม่เข้าไปใน Table
Syntax :
ALTER TABLE table_name ADD column_name datatype
ตัวอย่าง :
ALTER TABLE CUSTOMERS ADD SEX char(1)
Post by Goborijung at 2022-04-06 06:18:00 | ID: 1447
-- การ Backup แบบเอาแค่โครงสร้าง Database ไม่เอา Data
1. เลือก Database Name
2. Right Click > Tasks > Generate Script...
3. เลือกหัวข้อ Script entire database and all database objects
4. เลือก Save as script file
5. เลือก Location Save ตั้งชื่อ FileName.sql
6. Next > Next > รอให้มันสีเขียวทั้งหมด
7. กด Finish เป็นอันเสร็จเรียบร้อยจ้า
Post by Goborijung at 2022-04-06 06:28:08 | ID: 1448
-- การ Backup Table ใน Database แบบเอา Data ด้วย
1. เลือก Database Name
2. Right Click > Tasks > Generate Script...
3. เลือกหัวข้อ Select specific database objects > เลือก Table Name
4. Click ปุ่ม Advanced > หัวข้อ General เลือกเป็น Types of data to script
5. เปลี่ยนจาก Schema only ให้เป็น Schema and data
6. เลือก Save as script file
7. เลือก Location Save ตั้งชื่อ FileName.sql
8. Next > Next > รอให้มันสีเขียวทั้งหมด
9. กด Finish เป็นอันเสร็จเรียบร้อยจ้า
Post by Goborijung at 2022-03-08 08:40:57 | ID: 1402
https://www.thaicreate.com/community/sqlserver-linked-server.html หรือ ใช้คำสั่ง Sql เช่น USE [master] GO /****** Object: LinkedServer [191.20.2.xx] Script Date: 13/12/2566 10:42:00 ******/ EXEC master.dbo.sp_addlinkedserver @server = N'191.20.2.xx', @srvproduct=N'SQL Server' /* For security reasons the linked server remote logins password is changed with ######## */ EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'191.20.2.xx',@useself=N'False',@locallogin=NULL,@rmtuser=N'sa',@rmtpassword='5555' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'collation compatible', @optvalue=N'false' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'data access', @optvalue=N'true' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'dist', @optvalue=N'false' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'pub', @optvalue=N'false' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'rpc', @optvalue=N'true' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'rpc out', @optvalue=N'true' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'sub', @optvalue=N'false' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'connect timeout', @optvalue=N'0' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'collation name', @optvalue=null GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'lazy schema validation', @optvalue=N'false' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'query timeout', @optvalue=N'0' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'use remote collation', @optvalue=N'true' GO EXEC master.dbo.sp_serveroption @server=N'191.20.2.xx', @optname=N'remote proc transaction promotion', @optvalue=N'false' GO
Post by Goborijung at 2022-06-09 11:08:37 | ID: 1590
>> How to Create Stored Procedure Syntax :CREATE PROCEDURE procedure_name AS sql_statement GO;---------------- Example :CREATE PROCEDURE SelectAllCustomers AS SELECT * FROM Customers GO; การใช้งาน : EXEC SelectAllCustomers;---------------- Stored Procedure With One Parameter :CREATE PROCEDURE SelectAllCustomers @City nvarchar(30) AS SELECT * FROM Customers WHERE City = @City GO; การใช้งาน : EXEC SelectAllCustomers @City = 'London';---------------- Stored Procedure With Multiple Parameters :CREATE PROCEDURE SelectAllCustomers @City nvarchar(30), @PostalCode nvarchar(10) AS SELECT * FROM Customers WHERE City = @City AND PostalCode = @PostalCode GO; การใช้งาน : EXEC SelectAllCustomers @City = 'London', @PostalCode = 'WA1 1DP';
Post by Goborijung at 2023-07-12 09:48:56 | ID: 1949
Declare @tblName varchar(100) = 'PDK1_M_PAOUNDAM'-- หา Index
exec sp_helpindex @tblName -- หรือ /* select * from sys.indexes where object_id = (select object_id from sys.objects where name = 'PDK1_M_PAOUNDAM') And name is not null */-- หา Primary Key
exec sp_pkeys @tblName -- หรือ /* SELECT Col.Column_Name from INFORMATION_SCHEMA.TABLE_CONSTRAINTS Tab, INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE Col WHERE Col.Constraint_Name = Tab.Constraint_Name AND Col.Table_Name = Tab.Table_Name AND Tab.Constraint_Type = 'PRIMARY KEY' AND Col.Table_Name = 'PDK1_M_PAOUNDAM' */-- หา Size Table
EXEC sp_spaceused @tblName-- หา Dependency
SELECT name,type,type_desc,referenced_server_name,referenced_database_name,referenced_schema_name,referenced_entity_name FROM sys.sql_expression_dependencies A, sys.objects B WHERE referenced_id = OBJECT_ID(@tblName) AND A.referencing_id = B.object_id order by name --หรือ /* select B.name ,B.type, B.type_desc, A.referenced_server_name, A.referenced_database_name ,A.referenced_schema_name ,A.referenced_entity_name from sys.sql_expression_dependencies A inner join sys.objects B ON A.referencing_id = B.object_id Where A.referenced_entity_name = 'PDK1_M_PAOUNDAM' order by B.name */
Post by Goborijung at 2023-12-01 14:30:43 | ID: 1993
CREATE VIEW view_name AS SELECT column1, column2, ... FROM table_name WHERE condition;
Post by Goborijung at 2024-08-28 15:38:05 | ID: 2017
Declare @tblName varchar(100) = 'tblName' Select ROW_NUMBER() over(Order by Column_Name) as No,Column_Name ,case Data_Type when 'datetime' then Data_Type when 'bit' then Data_Type when 'int' then Data_Type when 'text' then Data_Type when 'decimal' then Data_Type+'('+rtrim(cast(NUMERIC_PRECISION as char(5)))+','+rtrim(cast(NUMERIC_SCALE as char(5)))+')' when 'time' then Data_Type+'('+rtrim(cast(SCALE as char(5)))+')' when 'numeric' then Data_Type+'('+rtrim(cast(NUMERIC_PRECISION as char(5)))+','+rtrim(cast(NUMERIC_SCALE as char(5)))+')' else Data_Type+'('+cast(Lengths as varchar(5))+')' end as Data_Type ,cast(Descs as nvarchar(100)) as Descs From ( Select name as Column_Name /*,iif(is_nullable = 0 , 'F','T') as is_nullable*/ ,(Select DATA_TYPE From INFORMATION_SCHEMA.COLUMNS Where TABLE_NAME = @tblName And COLUMN_NAME = sc.name) as Data_Type ,(Select CHARACTER_MAXIMUM_LENGTH From INFORMATION_SCHEMA.COLUMNS Where TABLE_NAME = @tblName And COLUMN_NAME = sc.name) as Lengths ,(Select NUMERIC_PRECISION From INFORMATION_SCHEMA.COLUMNS Where TABLE_NAME = @tblName And COLUMN_NAME = sc.name) as NUMERIC_PRECISION ,(Select NUMERIC_SCALE From INFORMATION_SCHEMA.COLUMNS Where TABLE_NAME = @tblName And COLUMN_NAME = sc.name) as NUMERIC_SCALE ,(Select SCALE From INFORMATION_SCHEMA.COLUMNS Where TABLE_NAME = @tblName And COLUMN_NAME = sc.name) as SCALE ,(Select value From sys.extended_properties Where major_id = sc.object_id and minor_id = sc.column_id) as Descs From sys.columns sc Where object_id = (Select object_id From sys.tables Where name = @tblName) ) A Order by Column_Name