# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > دسترسی به داده ها (ADO.Net و LINQ و ...) >  نحوه ایجاد جدول در sql با کدنویسی در C#‎

## hana2064

من این سوالو اشتباها تو قسمت امنیت پرسیدم و از اونجا که اون تالار خلوتیه یه بار دیگه اینجا می پرسم 
چطور با کدنویسی یه جدول ایجاد کنیم . من همیشه با enterprise  manager تو sql کار میکنم ولی از اونجایی که برنامه ام تحت شبکه است همیشه بهserver  دسترسی ندارم و نمیدونم چطور تغییرات رو به جداول اعمال کنم یا جدول جدیدی ایجاد کنم
از همگی ممنونم :لبخند گشاده!:  :لبخند گشاده!:  :لبخند گشاده!:  :لبخند گشاده!:

----------


## kiosksoft

///<summary>
/// sql تابعی برای اجرای یک دستور 
///</summary>
///<param name="ssql">دستور</param>
publicvoid ExecuteSQL(string ssql)
{
SqlConnection myConnection = newSqlConnection(GetSqlConnection("ConnStr"));
SqlCommand cmd = newSqlCommand(ssql, myConnection);
cmd.CommandType = CommandType.Text;
myConnection.Open();
cmd.ExecuteNonQuery();
myConnection.Close();
}


CREATE DATABASE 

CREATE DATABASE database_name

SQL CREATE TABLE Syntax
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
column_name3 data_type,
....
)


CREATE TABLE Persons(P_Id int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Address varchar(255),City varchar(255),PRIMARY KEY (P_Id))

ویرایش جدول


ALTER TABLE "table_name"
[alter specification] 


حذف یک جدول


DROP TABLE "table_name"

----------


## hana2064

از شما ممنونم 
ولی دستوراتی که نوشتین توی sql هست که تا حدودی میدونم ولی من تو محیط سی شارپ و تو سورس برنامه میخوام جداول رو ایجاد کنم در این مورد میتونین کمکم کنین؟؟؟ :گیج:

----------


## NewFoxStudent

همین دستورات رو به صورت رشته به تابعی که بالا معرفی شده ارسال کن
به طور کلی شما میتونید با استفاده از کلاس SqlCommand دستورات Sql رو توی ممحیط C#‎ اجرا کنید
برای ارتباط با Sql Server هم از کلاس SqlConnection استفاده کنید


SqlCommand sqlCmd = new SqlCommand();
SqlConnection sqlCon = new SqlConnection(ConnectionString);
sqlCmd.Connection = sqlCon;
sqlCmd.CommandText = "Create Table Test (Field1 Char(10));
sqlCon.Open();
sqlCmd.ExecuteNoneQuery();
sqlCon.Close();


این کد جدول تست رو توی دیتابیسی که در ConnectionString مشخص میشه ایجاد میکنه
اگه مشکل داشتی بگو تا یه مثال Upload کنم

----------


## hana2064

ممنونم از توجه تون .اگه نخوایم اصلا با sql کار کنیم این دستورات رو تو کدوم فرم برنامه باید بنویسیم که برنامه بانک رو ایجاد و بشناسه؟

----------


## NewFoxStudent

> ممنونم از توجه تون .اگه نخوایم اصلا با sql کار کنیم این دستورات رو تو کدوم فرم برنامه باید بنویسیم که برنامه بانک رو ایجاد و بشناسه؟


منظورتون از این جمله چیه . ممکنه توضیح بدید

Sql زبان استاندارد کار با داده هاست . حتی اگه بانک شما Sql نباشه بازهم برای ارتباط با اون باید از دستورات Sql استفاده کنید

----------


## hana2064

منظورم محیط enterprise manager هست . ببینید برنامه ام تحت شبکه است و من همیشه به سرور دسترسی ندارم میخوام از طریق کد نویسی جداول رو ایجاد و فیلدها رو تعریف کنم . الان سوالم اینه که تو کدوم فرم باید این دستورات رو بنویسم؟؟؟؟؟؟؟

----------


## NewFoxStudent

اگه درست متوجه شده باشم شما میخواهید که وقتی برنامه اجرا میشه چک کنید که بانک اطلاعاتی وجود داره یا نه و اگه وجود نداشت بانک رو از طریق کد نویسی ایجارد کنید
اگه درست متوجه شدم بفرمائید تا راهش رو بگم

----------


## NewFoxStudent

در این مثال در فرم اصلی برنامه دستور ایجاد یک جدول اجرا میشه

SqlSample.rar

شما میتونید کدهای مورد نظر رو هرجا بنویسید و ازشون استفاده کنید به عنوان مثال مینونید این دستورات رو توی فرم اصلی برنامه بنویسید و یا هرجای دیگه که نیاز هست

----------


## hana2064

ممنونم ازتون به خاطر جواباتون . چک کردن اینکه بانک وجود داره یا نه برام مهم نیست . کل بانک رو تو پروژه جدیدم میخوام که از طریق سورس برنامه ایجاد کنم نه تو محیط sql.
اگه تو فرم اصلی بنویسم هر بار که برنامه اجرا میشه ایا از نو این جداول ایجاد میشن و ....

----------


## NewFoxStudent

برای این کار باید اول چک کنید که بانک اطلاعاتی وجود داره یا نه با این دستور


Select Name From SysDataBases Where Name = 'dbName'

اگه بانک وجود داشته باشه و شما دوباره بخواهید بسازیدش با خطای Database 'dbName' already exists مواجه میشید
اگه وجود نداشت دستورات مربوط به ایجاد بانک رو اجرا کنید و اگه وجود داشت برنامه بدون ایجاد بانک به کارش ادامه بده
اگه نیاز به مثال دارید بگید تا بزارم

----------


## ardalan_off

ببخشید اگه میشه در مورد دستورات بانک در سی شارپ کامل بصورت تیوریک برام توضیح بدین؟؟
ممنون میشم

----------


## asemannn

با سلام 
من یه مبتدی هستم می خواستم بهم بگین که چه جوری باید شروع به کار کنم با sql البته دستوراتشو بلدم اما تازه این نرم افزارو نصب کردم نمی دونم از کجا باید شروع کنم به جدول ساختن و کد نوشتن میشه یه توضیح به من بدید ممنون میشم کمکم کنید.

----------


## asemannn

من بودا اولش ببخشید :لبخند:

----------


## asemannn

باسلام 
من می خواستم بدونم باچه کدی می توان بین جدول در sql با C#‎ ارتباط برقرار کرد.

----------


## ehsan446

> باسلام 
> من می خواستم بدونم باچه کدی می توان بین جدول در sql با C#‎‎‎ ارتباط برقرار کرد.


سوالتون خیلی کلیه شاید این کتاب کمکتون کنه
http://ict-hadaf.persiangig.com/document/sql-table.pdf
اگه مشکلتون حل نشد می تونید email بزنید تا براتون امادش کنم

----------


## علی فتحی

من که چیزی نفهمیدم جوابها معلوم نیست

----------

