এসকিউএল ডাটাবেস এবং সারণী তৈরি করুন [বন্ধ]


150

সি # অ্যাপ্লিকেশন কোডের মধ্যে, আমি এক বা একাধিক এসকিউএল ডাটাবেস তৈরি করতে এবং তার সাথে ইন্টারঅ্যাক্ট করতে চাই।

আমি কীভাবে একটি নতুন এসকিউএল ডাটাবেস ফাইল শুরু করব এবং এটি পড়তে এবং লেখার জন্য খুলি?

ডাটাবেস তৈরির পরে, আমি কীভাবে একটি টেবিল তৈরি করতে একটি ডিডিএল বিবৃতি কার্যকর করব?

উত্তর:


290

পরবর্তী লিঙ্কটি আপনাকে একটি দুর্দান্ত টিউটোরিয়ালে নিয়ে আসবে, এটি আমাকে অনেক সাহায্য করেছিল!

সি # তে এসকিউএলআইটি কিভাবে করবেন

আমি আমার নিজের সি # অ্যাপ্লিকেশনটির জন্য এসকিউএল ডাটাবেস তৈরি করতে সেই নিবন্ধের সমস্ত কিছুই প্রায় ব্যবহার করেছি।

SQLite.dll ডাউনলোড করতে ভুলবেন না এবং এটি আপনার প্রকল্পের রেফারেন্স হিসাবে যুক্ত করুন। এটি নুগেট ব্যবহার করে এবং নিজেই dll যোগ করে করা যায় done

আপনি রেফারেন্স যুক্ত করার পরে, আপনার শ্রেণীর উপরে নীচের লাইনটি ব্যবহার করে আপনার কোড থেকে ডেল দেখুন:

using System.Data.SQLite;

আপনি এখানে dll খুঁজে পেতে পারেন:

এসকিউএলাইট ডিএলএল এর

আপনি এখানে নিউগেট উপায়টি খুঁজে পেতে পারেন :

NuGet

এরপরে তৈরি স্ক্রিপ্ট। একটি ডাটাবেস ফাইল তৈরি করা:

SQLiteConnection.CreateFile("MyDatabase.sqlite");

SQLiteConnection m_dbConnection = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;");
m_dbConnection.Open();

string sql = "create table highscores (name varchar(20), score int)";

SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();

sql = "insert into highscores (name, score) values ('Me', 9001)";

command = new SQLiteCommand(sql, m_dbConnection);
command.ExecuteNonQuery();

m_dbConnection.Close();

আপনি সি # তে একটি স্ক্রিপ্ট তৈরি করার পরে, আমি মনে করি আপনি রোলব্যাক লেনদেন যুক্ত করতে চাইতে পারেন, এটি নিরাপদ এবং এটি আপনার ডাটাবেসকে ব্যর্থ হওয়া থেকে বাঁচিয়ে রাখবে, কারণ তথ্যটি একটি পরমাণু ক্রিয়াকলাপ হিসাবে এক বড় অংশে শেষ পর্যন্ত প্রতিশ্রুতিবদ্ধ হবে ডাটাবেস এবং সামান্য টুকরো নয়, যেখানে এটি উদাহরণস্বরূপ 10 টি প্রশ্নের 5 ম এ ব্যর্থ হতে পারে।

কীভাবে লেনদেনগুলি ব্যবহার করবেন তার উদাহরণ:

 using (TransactionScope tran = new TransactionScope())
 {
     //Insert create script here.

     //Indicates that creating the SQLiteDatabase went succesfully, so the database can be committed.
     tran.Complete();
 }

5
সুন্দর পরিষ্কার উত্তর। +1 করেছে। এখানে আরেকটি উদাহরণ যা আপনাকে দেখায় যে
এসকিউএলাইট কীভাবে

আমার পরীক্ষায় System.Transactions.TransactionScopeপ্রত্যাশা মতো কাজ করে না, এটি ExecuteNonQueryতাত্ক্ষণিকভাবে কার্যকর করা হবে এবং সমস্ত একসাথে হবে না SQLiteTransaction। কেন ব্যবহার করবেন TransactionScope?
মিঃ ক্যালভিন

1
আমি SQLiteTransaction tr = m_dbConnection.BeginTransaction(); SQLiteCommand command = new SQLiteCommand(...); command.Transaction = tr;ব্যবহারের চেয়ে বেশি পছন্দ করিTransactionScope
ব্যবহারকারীর 643011
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.