Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > ผมอยากรู้วิธี Generate Create table MS SQL (Script) กรณีที่ไม่มี Table ที่เราเขียนขึ้นมาใหม่ ให้มัน Generate table



 

ผมอยากรู้วิธี Generate Create table MS SQL (Script) กรณีที่ไม่มี Table ที่เราเขียนขึ้นมาใหม่ ให้มัน Generate table

 



Topic : 080052



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์




ผมอยากรู้วิธี Generate table MS SQL กรณีที่ไม่มี table ที่เราเขียนขึ้นมาใหม่ ให้มัน Generate table
เช่น ในเครื่องผมสร้าง table ชื่อ Customer แล้วก็เขียนปกติ

แล้วผมพอผมทำตัว setup ขึ้นมา อยากให้ไป Generate table ดูว่า table นี้มีหรือยัง ถ้ายังไม่มีให้สร้างขึ้นมาใหม่


ผมขอตัวอย่างเป็น Winapp นะครับ



Tag : .NET, Ms SQL Server 2005, Crystal Report, Win (Windows App), C#, VS 2008 (.NET 3.x)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-06-21 20:57:02 By : SeedNew View : 3593 Reply : 23
 

 

No. 1



โพสกระทู้ ( 394 )
บทความ ( 0 )



สถานะออฟไลน์


ใช้คำสั่งนี้
Code (SQL)
SELECT name 
FROM dbo.sysobjects 
WHERE xtype = 'U' 

จะได้ชื่อ Table ทั้งหมดที่อยู่ใน Database ที่เรา Connect อยู่มา ก็เอามาเช็คดูว่าขาด Table ไหน

อันไหนขาดก็ใช้คำสั่งนี้สร้างเอา
https://www.thaicreate.com/tutorial/sql-create-table.html






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 08:25:15 By : Nameless
 


 

No. 2

Guest


ใช้ linq จบเลย

กำหนด connection

สร้าง data context ด้วย connection ที่กำหนด

สร้าง table class

เอา table class ที่สร้างไปเป็น property ของ data context

จากนั้นก็ไม่ต้องทำอะไร จบเลย มันไม่เจออะไรมันก็สร้างให้เอง

ตั้งแต่ database, table
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 08:48:41 By : อิอิ
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ใน SQL Server น่าจะไม่มี CREATE TABLE IF NOT EXISTS `tb_name`


เช่น
CREATE TABLE IF NOT EXISTS [dbo].[customer](
	[CustomerID] [varchar](4) NOT NULL,
	[Name] [varchar](50) NULL,
	[Email] [varchar](50) NULL,
	[CountryCode] [varchar](2) NULL,
	[Budget] [float] NULL,
	[Used] [float] NULL
)


แต่น่าจะเขียน function ได้ครับ เดียวลองดู
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:12:26 By : mr.win
 


 

No. 4



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


ปกติผมทำเสร็จจะ ใช้ MS SQL ทำเป็นแบบสคลิปเอาตารางที่สร้างมาใหม่ ไปรันสคลิปบนเครื่องที่ไม่มี
หัวหน้าเลยบอกว่าคนเก่าเคยเขียนแบบ ให้มันเจ้นได้ลองหาวิธีดู

พอมีตัวอย่างฟังก์ชั่นบ้างป่ะ ผมโง่กว่าพวกพี่คิด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:21:01 By : SeedNew
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ได้แล้วครับ

CREATE TABLE IF NOT EXISTS
IF NOT EXISTS (SELECT * FROM sysobjects WHERE name='customer' AND xtype='U')
	CREATE TABLE [dbo].[customer](
		[CustomerID] [varchar](4) NOT NULL,
		[Name] [varchar](50) NULL,
		[Email] [varchar](50) NULL,
		[CountryCode] [varchar](2) NULL,
		[Budget] [float] NULL,
		[Used] [float] NULL
	)
GO

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:25:48 By : mr.win
 


 

No. 6



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


พี่ขอถามหน่อยดิ สงสัย 2 บรรทัด
FROM sysobjects คืออะไร
xtype='U' คืออะไร


ประวัติการแก้ไข
2012-06-22 09:40:26
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:37:40 By : SeedNew
 


 

No. 7



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

มันเป็น table ที่เก็บ system object ทั้งหมดครับ ลอง Query นี้ดูครับ

Code
SELECT * FROM sysobjects


xtype='U' น่าจะระบุชนืดว่าเป็น table ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:42:54 By : mr.win
 


 

No. 8



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


อ่อ เข้าใจแล้ว อิอิ

Code
SELECT name
FROM dbo.sysobjects
WHERE xtype = 'U'


คือเช็คเทเบิ้ลทั้งหมด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:44:30 By : SeedNew
 


 

No. 9



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

SQL Server sysobjects

ดูตามรูปครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:45:57 By : mr.win
 


 

No. 10

Guest


เขียนไว้นานแล้ว จากกระทู้เก่าๆ https://www.thaicreate.com/dotnet/forum/044317.html

Code (C#)
private bool TableExist(string TableName)
{
    string sqlCommandString = string.Format("If Object_ID('{0}', 'U') Is Not Null Select 'true' Else Select 'false'", TableName);

    SqlCommand sqlCommand = new SqlCommand(sqlCommandString, sqlConnection);
    
    sqlConnection.Open();
    object Result = sqlCommand.ExecuteScalar();
    sqlConnection.Close();

    return Convert.ToBoolean(Result);
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 09:57:21 By : อิอิ
 


 

No. 11

Guest


เวลาเรียกใช้

Code (C#)
if (!TableExist("PokedexTable"))
{
    CreateTable("PokedexTable");
}


Code (C#)
private bool CreateTable(string TableName)
{
    string sqlCommandString = string.Format("Create Table [{0}] ([PokemonID] int Identity(1,1) Primary Key Clustered, [PokemonCode] nvarchar(50), [PokemonName] nvarchar(50), [PokemonHp] int, [PokemonAttack] int, [PokemonDefense] int, [PokemonSpAttack] int, [PokemonSpDef] int, [PokemonSpeed] int, [PokemonIcon] varbinary(MAX), [PokemonArtwork] varbinary(MAX))", TableName);

    SqlCommand sqlCommand = new SqlCommand(sqlCommandString, sqlConnection);

    sqlConnection.Open();
    int Result = sqlCommand.ExecuteNonQuery();
    sqlConnection.Close();

    return (Result > 0) ? true : false;
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 10:02:47 By : อิอิ
 


 

No. 12



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


พี่ผมสงสัยอีกนิด1111111111111

คือ
คำถามที่ 1 ถ้าจะเช็คว่าใน table มีคอลัมน์ตัวที่ส้างขึ้นมาใหม่ หรือไม่ ถ้าไม่มีให้สร้างคอลัมน์นั้นขึ้นมา
เช่น เช็คตาราง customer ว่า มี คอลัมน์ Tel หรือไม่ ถ้าไม่มี ให้สร้างคอลัมน์ Tel ขึ้นมาใหม่


คำถามที่ 2 จะเช็คว่า มี Database ตัวที่เราสร้างขึ้นมาใหม่หรือไม่ ถ้าไม่มีสร้าง Database ขึ้นมาใหม่
เช่น ผมสร้าง Database ชื่อ Mydatabase ถ้าไม่มีให้สร้าง Mydatabase
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 22:32:10 By : SeedNew
 


 

No. 13



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

เรื่องเพิ่ม Column ฟิวด์น่ะทำได้ครับ (เดียวพรุ่งนี้มาเขียนให้) ส่วนเพิ่ม Database น่าจะมีอยู่แล้วน่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-22 22:47:09 By : mr.win
 


 

No. 14



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

อันนี้ตรวจสอบ Database ก่อนการสร้าง

IF NOT EXISTS (SELECT * FROM sys.databases WHERE name='Sales')

	CREATE DATABASE Sales
	ON 
	( NAME = Sales_dat,
	   FILENAME = 'D:\Database\saledat.mdf',
	   SIZE = 10,
	   MAXSIZE = 50,
	   FILEGROWTH = 5 )
	LOG ON
	( NAME = 'Sales_log',
	   FILENAME = 'D:\Database\salelog.ldf',
	   SIZE = 5MB,
	   MAXSIZE = 25MB,
	   FILEGROWTH = 5MB )

GO

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 06:39:45 By : mr.win
 


 

No. 15



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

อันนี้ ALTER ADD Column

IF NOT EXISTS (SELECT * FROM sys.columns a
				INNER JOIN sysobjects b
				ON a.object_id = b.id
				AND a.name='Used'
				AND b.xtype='U'
				AND b.name = 'customer')
	ALTER TABLE customer ADD Used float NULL;
GO



ตรวจสอบใน Table ชื่อว่า customer มี Used อยู่หรือไม่ ถ้าไม่มีให้ ALTER ADD COLUMN
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 06:55:05 By : mr.win
 


 

No. 16



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


พี่วินครับ กระทู้ที่ 14 ผมลองแล้วไม่ผ่าน
มัน Error ว่าพาทไม่ถูกต้อง

Code (C#)
IF NOT EXISTS (SELECT * FROM sys.databases WHERE name='Sales')

	CREATE DATABASE Sales
	ON 
	( NAME = Sales_dat,
	   FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\saledat.mdf',
	   SIZE = 10,
	   MAXSIZE = 50,
	   FILEGROWTH = 5 )
	LOG ON
	( NAME = 'Sales_log',
	   FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\salelog.ldf',
	   SIZE = 5MB,
	   MAXSIZE = 25MB,
	   FILEGROWTH = 5MB )

GO



Code
Msg 5133, Level 16, State 1, Line 3
Directory lookup for the file "C:\Program Files\Microsoft SQL Server\MSSQL10_50.SQLEXPRESS\MSSQL\DATA\saledat.mdf" failed with the operating system error 3(error not found).
Msg 1802, Level 16, State 1, Line 3
CREATE DATABASE failed. Some file names listed could not be created. Check related errors



ประวัติการแก้ไข
2012-06-23 09:31:00
2012-06-23 09:31:30
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 09:29:02 By : SeedNew
 


 

No. 17



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองแยกสร้างในโฟเดอร์ง่าย ๆ ดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 09:48:40 By : mr.win
 


 

No. 18



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ตัวที่เขียนให้ผมลองแล้วผ่านทุกตัวครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 09:49:15 By : mr.win
 


 

No. 19



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


อ่อได้แล้วครับ ตะกี้ผมดูไม่ดีเอง เชื่อมเป็น sever ไม่เลือกตัวมันเอง
ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 10:39:04 By : SeedNew
 


 

No. 20



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-23 10:46:29 By : mr.win
 


 

No. 21



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

แทรกคำสั่ง USE [Database-Name] ก่อนด้วยทุกครั้งครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-24 17:21:00 By : mr.win
 


 

No. 22



โพสกระทู้ ( 213 )
บทความ ( 0 )



สถานะออฟไลน์


แทรกตรงไหน ยังไงเหรอครับพี่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-25 09:18:47 By : SeedNew
 


 

No. 23



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

บรรทัดแรกสุดครับ เป็นการ SELECT Database ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-06-25 15:24:07 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ผมอยากรู้วิธี Generate Create table MS SQL (Script) กรณีที่ไม่มี Table ที่เราเขียนขึ้นมาใหม่ ให้มัน Generate table
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่