Ek SQL talimatları için yardım isteyin. SQL veritabanından kayıtları görüntüleme Bir sql tablosuna kayıt nasıl eklenir

statti mi razberemo'da, belki de en önemlilerinden biri SQL sorguları. Tse veritabanı tablolarından ek veri kayıtları isteyin. Oskіlki, DUZHE sık sık getirdi tabloya yeni kayıtlar ekle, ayrıca, iş otomatiktir, o zaman obov'yazkovy'nin tüm malzemesi noktaya kadar.

koçan için Tabloya yeni bir kayıt eklemek için SQL isteği:

INSERT INTO kullanıcıları (oturum açma, geçiş) değerleri ("TestUser", "123456")

Bir kayıt eklerken, komut TAKIN", ardından tabloları adlandırarak yak'a bir kayıt eklenir. Ardından, yuvarlak kollarda, alanları hatırlamak istediğimiz gibi adlandırın. Ve sonra, yuvarlak kollarda, kelimeleri yazın " değerler seçtiğimiz gibi sessiz sulamanın anlamını yeniden düşünmeye başlıyoruz. Vikonannya tsgogo zapiu'dan sonra tablomuzdaki z'yeni rekor görünüyor.

Gereklidir tablodaki kaydı güncelle, bunun için saldırı SQL sorgusu:

GÜNCELLEME kullanıcıları SET login="TestUser2", pass="1234560" WHERE login="TestUser"

Tsey, bir tasarımımız olduğu için daha fazla katlama isteyecektir. NEREDE"ama bu konuda biraz daha aşağı. Takım arka arkaya gidiyor" GÜNCELLEME", tablonun adından sonra ve sonra" AYARLAMAK Değiştirmek istediğimiz gibi tüm sulamanın anlamını açıklıyoruz. Her şey basit olurdu, ama işte yemek: Ve ne tür bir kayıt güncellenmelidir?". Kimin için biliyorum" NEREDE". Bu sayede kaydı, alanı güncelliyoruz" giriş yapmak"ne anlama gelebilir" TestKullanıcısı Saygı duymak gerekirse, eğer böyle kayıtlar olacaksa, o zaman kesinlikle her şeyi değiştir! Anlamak daha önemlidir, aksi takdirde masanızı harcama riskini alırsınız.

Biraz daha konuşalım" NEREDE Soğukkanlılık için basit tersine çevirme suçu, mantıksal işlemler kadar tutarsızlığın kendisine de dayanır: VEі VEYA.

GÜNCELLEME kullanıcıları SET login = TestUser2, pass=1234560 WHERE id< 15 AND login="TestUser"

Danimarka SQL sorgusu girişlerinizi güncelleyin, İD biraz daha az 15 І alan " giriş yapmak"anlam" TestKullanıcısı".Ben seni destekliyorum, sen dizaynla ilgilendin" NEREDE", bunun için daha önemli. Aynı" NEREDE"galip gelen tablodan kayıtları seç, ve tse zavdannya, veri tabanlarıyla çalışırken en çok kazanan scho.

ben, nasamkinets, basit Tablolardan silinen kayıtlar için SQL sorgusu:

Kullanıcılardan SİL WHERE login="TestUser2"

" komutundan sonra SİL"Tablo nerede, hangi kayıtları görmek gerekiyor. "NEREDE" yapısını tarif edelim. Eğer kayıt akılların tarifine uygunsa o zaman görülecektir. NEREDE", belki de yakarak içebilirsin.

Bazen programcılar veri tabanından veri tabanını nasıl okuyacaklarını bilirler. Programcılar gergin ve şiddetli hale gelirler, uykularını harcarlar ve hararetli bir şekilde klavyede parmaklarını işaretlerler. Küresel iyilik adına, ADO.NET ve OLE DB'nin yardımıyla C#'dan veri tabanına sahip bir robot tarafından tüm dünya arasında o dünyaya beceriksizce bakılıyor. Bu mekanizmanın Oracle tipi için farklı veri tabanlarını desteklemesini istiyorsak, MS SQL Server'ı da kazanacağız.

Veri tabanı ile çalışma saati için iki ana görev

2. Vikonannya sql komutu, sunucuda soymak için scho (ekleme, güncelleme, silme, çağrı fonksiyonları veya kaydedilen prosedürler)

3. Seçim seçimini satır satır okuduktan sonra. Temel olarak web eklerinde kazanır, en basit şekilde, operasyonel hafızadaki tüm vibirku'yu arka arkaya zavantazhit, sadece gerekli satırları okuma biçimindeki tasarruf önemsizdir.

4. Radkisny vpadok. DataTable'daki değişikliklere dayalı olarak veritabanındaki tabloları otomatik olarak güncelleyin (kural olarak, görsel arayüz aracılığıyla düzenlenir). Gerçek hayatta, veriler birkaç birleştirme ile daraltılabilir bir istek üzerinden okunmalıdır, aksi takdirde otomatik senkronizasyonun uygun olmadığı belirtilir.

Temel Clasy, Shao Wycrovers CIKHY için: OLEDBCONNEECTION - Z'єєєднанна з з за замень замень з колова икольная соость стратиритки З'єєднаннанна , Відкриваємормо задравуємоммормое, OleDbCommand - SKL-SQL-Toplum, yakscho Potterin, sadece Vikonati Güncelleme veya tek bir değeri seçin sonra bir sınıf seçin, OleDbDataAdapter - OleDbCommand'dan oluşturulur, bir DataTable'dan bir dizi satırın bir kerelik okunmasında uzmanlaşır, bir seçimin alt kümesinde bir DataTable sütununu otomatik olarak oluşturabilir, değişiklikleri DataTable'dan bir tabloya aktarabilir. veri tabanı; OleDbDataReader - DataTable'ın son okuma satırları birer birer (OleDbDataAdapter'ın ortasında çalışırken), DataTable/DataSet - veriler için ana kapsayıcı. OleDbType dönüştürme, veri türlerini ve veri tabanlarını kaydeder.

System.Data'yı kullanma; System.Data.OleDb kullanarak; // start satırı, vykoristovuetsya sistem koristuvachiv Windows (Integrated Security=SSPI;) string connString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=veritabanıAdı;Veri Kaynağı=sunucuAdı"; // MS SQL Server Authenticators'a bağlanmak için alternatif dize // connString = "Provider=SQLOLEDB.1;Persist Security Info=False;Initial Catalog=veritabanıAdı;Bağlantı Zaman Aşımı=20;Veri Kaynağı=sunucuAdı;Uid=kullanıcıAdı;Pwd =kullanıcıParolası ;" OleDbConnection dbConn = Yeni OleDbConnection(connString); dbConn.Open(); someDataTable = Yeni DataTable(); OleDbDataAdapter dbAdapter = new OleDbDataAdapter("TEST_TABLE ORDER BY COLUMN2'DE COLUMN1, COLUMN2'yi seçin", dbConn); // Boş tablonun iç yapısı, okunan verilere dayalı olarak otomatik olarak oluşturulacaktır, çünkü tabloların yapısı önceden ayarlandığından (örneğin, DataSet yazarak), veriler sütunlara yazılabilecek adlarla yazılacaktır. eklenen veya yeni sütunlar eklenecek dbAdapter.Fill(someDataTable); // DataSet'te tabloları doldurmanın alternatif yolu // dbAdapter.Fill(someDataSet, "someDataTable"); dbConn.Close();

2. Sunucuda çalınması gereken Vikonannya sql komutu (kaydedilen ekleme, güncelleme, silme, wickklik işlevleri veya prosedürleri).

Özellikle varto, tarihlerle ilgili sorunları gösterir. .Net'te tarihlerin uygulanması çok çarpıktır - tarihin arkası boş olamaz, ancak gerçek hayatta pis koku genellikle boştur. En iyi çözüm, Microsoft programcılarının yığınlarını düzelten özel bir tarih sınıfını kazanmaktır. Diğer perakendeciler, koddaki tarihleri ​​satırlar halinde keser ve bunları yalnızca gerektiğinde, örneğin veritabanına veya DataTable'a yazarken DateTime'a dönüştürür. Null yapılabilir DateTime çalışmaz, çünkü arabirimdeki boş bir tarih boş bir satır gibi görünebilir ve veritabanına DBNull.Value gibi yazarken - ve koddaki banal null, ek danslar olmadan dijital bir değere dönüştürülmez. tef.

İlk seçenek, bir dizi sorunun banal yapıştırılması temelinde olabilir. Kötü uygulamalar tarafından saygı duyulur ve hacker saldırıları için rahatsız edici olduğu için özellikle web eklentilerinde güvenli değildir. Boş tarihlerle ilgili sorunu çözmek o kadar kolay değil. Ek olarak, tarihlerle çalışırken ek bir sorun daha vardır - bölgesel ayarlardaki nadaslardaki farklı tarih satırları biçimleri. Net Framework, SQL Server için bir geliştirme ortamı. Daha gerçeküstü görünebilir - aynısı SQL Managment Studio'da çalışacak, ancak kodla oynayacak. Chastkovo ryatuє, bir dizi tarihin biçimini belirler, Prote, kimsenin bilmediği bu tür dünyaların temeli hakkında, iç koristuvannya için küçük programlardan sık sık çekinir.

OleDbCommand dbCommand = dbConn.CreateCommand(); dbCommand.CommandText = "TEST_TABLE'A EKLE (INT_COLUMN, VARCHAR_COLUMN, DATETIME_COLUMN) DEĞERLER (" + intVariable", " + stringVariable" , " + dateTimeVariable.ToString("yyyyMMdd")cuteNoQuery(); dbCommand().) dbCommand.CommandText

Doğru seçenek, kesin olarak yazılan bir dizi parametreyle bir komutun oluşturulmasına dayanabilir. Lütfen ön paragraf olmadığını unutmayın.

OleDbCommand dbCommand = dbConn.CreateCommand(); dbCommand.CommandText = "TEST_TABLOSUNA EKLE (INT_COLUMN, VARCHAR_COLUMN, DATETIME_COLUMN) DEĞERLER (?, ?, ?)"; dbCommand.Parameters.Add("INT_COLUMN", OleDbType.Integer).Value = intVariable; dbCommand.Parameters.Add("VARCHAR_COLUMN", OleDbType.VarChar).Value = stringVariable; if (stringDate == "") ( dbCommand.Parameters.Add("DATETIME_COLUMN", OleDbType.DateTime).Value =DBNull.Value; ) else ( dbCommand.Parameters.Add("DATETIME_COLUMN", OleDbType.TimeD Convert.To. stringDate); ) dbCommand.ExecuteNonQuery();

Prosedür aynı şekilde seçilir, diğer seçeneğin farkı parametrenin değerini kaydetmektir (eğer seçilen prosedürün kendisiyle eşleşmiyorsa):

OleDbCommand someDbComm = Yeni OleDbCommand("someStoredProcedure", this.dbConn); someDbComm.CommandType = CommandType.StoredProcedure; someDbComm.Parameters.Add("@parameter1", OleDbType.VarChar); someDbComm.Parameters.Add("@parameter2", OleDbType.VarChar); someDbComm.Parameters.Value = "(!LANG:(!LANG:Bir sorununuz veya çözümünüz olsun - daha basit, daha kullanışlı"; someDbComm.Parameters.Value = "Henry Louis Mencken"; someDbComm.ExecuteNonQuery(); !}!}

Atanan alan boyutundan parametre açıklamasının uzantıları ve tablonun belirli bir sütununa bağlanma.

DbCommand.Parameters.Add("VARCHAR_COLUMN", OleDbType.VarChar, 100, "VARCHAR_COLUMN").Value = stringVariable;

Komut parametresini DataTable'ın ilk alanına bağlamamız gerekmiyorsa, değerdeki farkı belirtmemek daha iyidir, bu nedenle örneğin satır, Varchar'ın belirtilen değerinden küçük olacaksa, o zaman bir iyi .Net çerçevesi, belirlenen değer olan sunucuya bir satır boşluk ekleyecektir.

Tek bir alanın değeri ExecuteScalar() yöntemiyle okunur

OleDbCommand dbCommand = dbConn.CreateCommand(); dbCommand.CommandText = "TEST_TABLE'DAN TEST_COLUMN SEÇİN NEREDE ID_COLUMN = ?"; dbCommand.Parameters.Add("INT_COLUMN", OleDbType.Integer).Value = intVariable; int sonuç = Convert.ToInt32(dbCommand.ExecuteScalar());

Özellikle ExecuteScalar'ın Object'i döndürdüğünü ve herhangi bir şey döndürmezse, sonucun null olacağını ve normal bir veri tipine dönüşümün affedileceğini bilmelisiniz. Durum daha da mümkün, sizden hiçbir şey alınmıyorsa şöyle çalışmanız gerekiyor:

OleDbCommand dbCommand = dbConn.CreateCommand(); dbCommand.CommandText = "TEST_TABLE'DAN TEST_COLUMN SEÇİN NEREDE ID_COLUMN = ?"; dbCommand.Parameters.Add("INT_COLUMN", OleDbType.Integer).Value = intVariable; nesne sonuçObj = dbCommand.ExecuteScalar() int sonuç = -1; // boş sonuç anlamına gelen promosyon değeri if(resultObj != null) ( sonuç = Convert.ToInt32(dbCommand.ExecuteScalar()); )

3. Seçim-seçim satır satır sıralı okuma
Bir satır okuma (kіlka döngüde okunur);

OleDbCommand dbCommand = new OleDbCommand(TEST_TABLE, dbConn'dan PERSON_ID, NAME, SURNAME seçin); OleDbDataReader dbReader = dbCommand.ExecuteReader(); dbReader.Read(); string name = Convert.ToString(dbReader["NAME"]); string soyad = Convert.ToString(dbReader["SURNAME"]); dbReader.Close();

4. Radkisny vpadok. DataTable'daki değişiklikler temelinde veritabanındaki tabloları otomatik olarak güncelleyin (kural olarak, görsel bir arayüz aracılığıyla düzenlenir).

DbAdapter için olası vipadok'un dış görünümüne bazı komutlar yazmak gerekir - seç, ekle, güncelle, sil.

DbAdapter.InsertCommand = Yeni OleDbCommand("TEST_TABLE (NAME, AİLE, YAŞ) değerlerine ekleyin (?, ?, ?)", dbConnection); dbAdapter.InsertCommand.Parameters.Add("NAME", OleDbType.VarChar, 100, "NAME"); dbAdapter.InsertCommand.Parameters.Add("FAMIL", OleDbType.VarChar, 100, "FAMIL"); // kalıcı değere sahip veri türleri için, dbAdapter.InsertCommand.Parameters.Add("AGE", OleDbType.Integer, 100, "AGE"); // güncelleme komutu ekle dbAdapter.UpdateCommand = new OleDbCommand("TEST_TABLE setini güncelle NAME = ?, FAMIL = ?, AGE = ? burada ID = ?", dbConnection); dbAdapter.UpdateCommand.Parameters.Add("NAME", OleDbType.VarChar,100, "NAME"); dbAdapter.UpdateCommand.Parameters.Add("FAMIL", OleDbType.VarChar, 100, "FAMIL"); dbAdapter.UpdateCommand.Parameters.Add("YAŞ", OleDbType.Integer, 100, "YAŞ"); dbAdapter.UpdateCommand.Parameters.Add("Kimlik", OleDbType.Integer, 100, "Kimlik"); // silme komutu ekle dbAdapter.DeleteCommand = new OleDbCommand("TEST_TABLE'dan sil, burada ID = ?", dbConnection); dbAdapter.DeleteCommand.Parameters.Add("Kimlik", OleDbType.Integer, 100, "Kimlik"); try ( // DataTable'daki tüm değişiklikleri veritabanındaki bir tabloya aktarın dbAdapter.Update(table); ) catch (İstisna hatası) ( MessageBox.Show("Veri kaydetme pardon!" + error.Message); dönüş; ) MessageBox . Show("Tasarruflarınızı değiştirin!");

Tablolarda kayıt eklemek (INSERT INTO), silmek (SİLMEK) ve güncellemek (GÜNCELLEME) için değişiklik talepleri yapılır.

INSERT INTO Komutu

INSERT INTO komutu, tablonun sonuna bir veya daha fazla kayıt eklemek için kullanılabilir.

INSERT INTO komutunun sözdizimi şöyle görünebilir:
INSERT INTO Table_Name [(Field_Name)] DEĞERLER (Data_Value);

Örneğin, ilgili girişlerin (Grup Kodu, Adı, Ders, Yarıyıl) verilerini (1, BF-16a, 1, 1) kaydetmek için "Grup" tablosuna bir kayıt koyun.

Biçimde hangi istek için:
GRUBA GİRİN (Grup Kodu, Adı, Dersi, Yarıyıl) DEĞERLERİ (1, BF-16a, 1, 1);
Görünüm menüsünden "SQL Modu" modunda "Creation" sekmesinde "Designer of request" komutu seçilerek istek formuna girilir.

"Add_1_record" adı için kaydedin. Sonuç olarak, "Geçişler alanında" bir nesne tutarsızlığı olacaktır - "Add_1_records" (Şek.1).


Pirinç. 1.

Paradan tasarruf etmek istiyorsanız, “Vikonati” piktogramına tıklayarak vikonati zapit yapmanız gerekir. “Add_1_record” komutu sonucunda boş tabloda ilk kayıt görünecektir (Small 2)



Pirinç. 2.

GÜNCELLEME Komutu

UPDATE komutu, verilen tablo sütunlarının değerlerinin güncellenmesini sağlayan tablo sütunlarında zaten gerekli olan girişleri değiştirmek için tanınır.

UPDATE komutunun sözdizimi şöyle görünebilir:
UPDATE Table_Name SET Stow_Name = New_Value WHERE Umova_Vidbor;

SET önermeleri, verilerinin değiştirilmesi gereken stovpt'lerin adlarına sahiptir. WHERE yan tümcesi bağlayıcı değildir, ancak güncellemeniz gerekiyorsa, ondan sonra üç satırdan fazla sütun (tablo) belirtebilirsiniz.

sql_training_st.mdb veritabanındaki "Group" tablosunun kaydını değiştirmek için bir istek oluşturalım.

Örneğin, "Gruplar" tablosunun "Ad" sütunundaki ilk anahtar alan kimliğinin temel kaydını değiştirin.

Biçim talebi:
GÜNCELLEME Groupi SET Adı = "BF-16b" NEREDE ID = 1;

"Change_record_1" adını sormak güvenlidir. Sonuç olarak, geçiş alanında bir nesne görünecektir - Change_record_1 (Şekil 3.).



Pirinç. 3.

Paradan tasarruf etmek istiyorsanız, “Vikonati” piktogramına tıklayarak vikonati zapit yapmanız gerekir. "Change_record_1" komutunun bir sonucu olarak, ID=1 değerini girmeniz ve OK düğmesine basmanız gereken bir iletişim kutusu görünecektir. "Grup" tablosundaki değişiklikten sonra, "Ad" alanındaki giriş BF-16a'dan BF-16b'ye değişecektir (Şekil 4.).



Pirinç. 4.

SİL komutu

DELETE komutu tablolardan kayıtları silmek için kullanılır.

Uzaktan kayıt talebinin formatı:
Tablo_Adı NEREDEN DELETE Umova_Vidboru;

sql_training_st.mdb veritabanındaki "Group" tablosunun kaydını değiştirmek için bir istek oluşturalım.

Örneğin, görünüşe göre, "Grup" tablosunun tüm sütunlarında (alanlarında) ilk anahtar alan kimliğinin net bir kaydı.

Biçimde hangi istek için:
ID=1;
Görünüm menüsünden "SQL Modu" modunda "Oluşturma" sekmesinde "Tasarım Tasarımcısı" komutunu seçerek bir istek formu oluşturun.

"Visual_record_1" adını sormak güvenlidir. Sonuç olarak, geçiş alanında bir nesne görünecektir - Vidalennya_record_1 (Küçük 5.).



Pirinç. beş.

Paradan tasarruf etmek istiyorsanız, “Vikonati” piktogramına tıklayarak vikonati zapit yapmanız gerekir. "Visual_record_1" komutunun bir sonucu olarak, ID=1 değerini girmeniz ve OK düğmesine basmanız gereken bir iletişim kutusu görünecektir. Bundan sonra, "Kayıtların görünümünü onayla" diyaloğunda onaylanır. "Grup" tablosunu onayladıktan sonra, veriler tüm alanlarda gösterilecektir, tobto. kayıt görüldü (Mal. 6.).



Pirinç. 6.

Ardından, tablonun belirli alanlarındaki verileri görüntülemek için UPDATE komutuyla hızlandırılması için ihtiyaç duyduğunuz alanların değerini Null olarak ayarlayın. Tabloyu bir bütün olarak görmek istiyorsanız, DROP TABLE ifadesini takip edin (ifadenin sözdizimi: DROP TABLE TableName;).

"Grup" tablosunda ilk kaydı görünce "Add_1_record" komutunu çalıştırdıktan sonra sonuç olarak ilk kayıt gösterilir (Small 7.).



Pirinç. 7.

Son güncelleme: 07/13/2017

Veri eklemek için INSERT komutu yürütülür, böylece aşağıdaki biçimsel sözdizimi kullanılabilir:

INSERT tablo_adı [(stowlist)] DEĞERLER (değer1, değer2, ... değerN)

Başın arkasında Ide viraz INSERT INTO , daha sonra kollarda, veri eklemeniz gerekirse ve sonunda zincirlerdeki DEĞERLER kelimesinden sonra değerleri yeniden dağıtan stopts_v listesini girebilirsiniz. stovpts_v için eklenenler.

Örneğin, aşağıdaki veri tabanının daha önce oluşturulduğunu varsayalım:

VERİTABANI OLUŞTUR ürünleridb; GO KULLANIM ürünleridb; CREATE TABLE Ürünleri (Id INT IDENTITY PRIMARY KEY, ÜrünAdı NVARCHAR(30) NULL DEĞİL, Üretici NVARCHAR(20) NULL DEĞİL, ProductCount INT DEFAULT 0, Price PARA BOŞ DEĞİL)

Dodamo, INSERT komutunun yardımının bir satır arkasına:

ÜRÜN DEĞERLERİNİ GİRİN ("iPhone 7", "Apple", 5, 52000)

SQL Server Management Studio'da başarılı bir vuruştan sonra, bildirim alanında "1 satır etkilendi" görünebilir:

Varto, VALUES anahtar kelimesinden sonra prangalardaki sütunların değerlerinin seslendirilme sırasına göre iletildiğini kontrol eder. Örneğin CREATE TABLE varyantında ilk sütunun Id olduğunu görebilirsiniz. Ayrıca, değeri otomatik olarak oluşturulan ve atlanabilen yeni işler için KİMLİK özniteliği. Diğer aşama ÜrünAdı'dır; bu, "iPhone 7" dizesinin o aşamanın kendisine verileceği anlamına gelir. Başka bir anlam - "Apple" satırı üçüncü üreticiye aktarılacak vb. Değerler şu şekilde sütunlara iletilir:

    ÜrünAdı: "iPhone 7"

    Üretici: Apple

Ayrıca, bir değer girerken, orta sütunlar olmadan belirtebilirsiniz, böylece değer eklenir:

ÜRÜNLERE EKLE (Ürün Adı, Fiyat, Üretici) DEĞERLER ("iPhone 6S", 41000, "Apple")

Burada anlam üçten az kelime ile belirtilir. Ve şimdi değerler, sütunların doğrudan sırasına göre iletilir:

    ÜrünAdı: "iPhone 6S"

    Üretici: Apple

Belirtilen öğeler için (bu ProductCount sekmesinde), DEFAULT özniteliği ayarlandığından veya değer NULL olduğunda kilidin değeri eklenecektir. Suçluyu belirtmezseniz, NULL değerine izin verin veya DEFAULT özniteliğini kullanın.

Ayrıca bir dizi hamsi ekleyebiliriz:

ÜRÜN DEĞERLERİNE EKLE ("iPhone 6", "Apple", 3, 36000), ("Galaxy S8", "Samsung", 2, 46000), ("Galaxy S8 Plus", "Samsung", 1, 56000)

Bu bölümde tabloya üç satır eklenecektir.

Ayrıca, eklerseniz, eşleştirme değerinin DEFAULT anahtar kelimesinin arkasındaki değer mi yoksa NULL değeri mi olduğunu belirtebilirsiniz:

ÜRÜNLERE EKLE (ÜrünAdı, Üretici, ÜrünSayısı, Fiyat) DEĞERLER ("Mi6", "Xiaomi", VARSAYILAN, 28000)

ProductCount için bu tür, promosyon için bir değere sahip olacaktır (ayarlanmışsa, değilse - NULL).

Tüm sütunlar, taşıma için bir değer atayan veya NULL değerlere izin veren bir DEFAULT niteliğine sahip olabilirse, tüm sütunlar için taşıma için bir değer ekleyebilirsiniz:

ÜRÜN VARSAYILAN DEĞERLERİNE EKLE

Ayrıca, Ürünler tablosunu alırsanız, komut bir af ile sona erecektir, çünkü alan sayısı DEFAULT niteliğine atanamaz ve bu durumda NULL değerlerine izin verilmez.



İstatistik değişikliği
1. Basit MySQL İsteği
2. Basit SEÇ (seç) sor
3. Lütfen INSERT (yeni kayıt) isteği
4. GÜNCELLEMEYİ affet (üzerine yaz, ekle) sor
5. Basit DELETE (Vidalite Kaydı) Talebi
6. DROP (görüntüleme tablosu) isteğini bağışla
7. MySQL İsteğini Katlama
8. MySQL isteği ve PHP'yi değiştirin

1. Basit SQL sorgusu

1. TÜM üslerin bir listesini sağlayın.

veritabanlarını GÖSTER;
2. base_name veritabanındaki TÜM tabloların bir listesini sağlayın.

base_name içindeki tabloları GÖSTER;

2. MySQL veritabanına basit SEÇ (seç) sorgusu

SEÇME- Veritabanındaki verilere dayanarak seçtiğiniz istek. Seçim için parametre sayısını belirleyebilirsiniz. Örneğin, Rus madeninin talebinin özü şöyle ses çıkarmaktır - Bu tür sütunları SEÇİN Böyle bir tablodan DE böyle bir sütunun parametresi daha önemlidir.

1. tbl_name tablosundan tüm verileri seçin.

tbl_name'DEN * SEÇİN;
2. tbl_name tablosundaki kayıt sayısını gösterin.

tbl_name'den sayıyı (*) SEÇİN;
3. (FROM) tablosundan tbl_name limit (LIMIT) 2'den başlayarak 3 kayıttan (SEÇ) öğesini seçin.

tbl_name LIMIT 2,3'DEN * SEÇİN;
4. tbl_name tablosunun (FROM) içinden TÜM (*) kayıtları (SEÇ) seçin ve bunları id alanına göre sıralayın (SİPARİŞ BY).

SEÇ * tbl_name FROM ID BY SİPARİŞ;
5. tbl_name tablosundan (FROM) TÜM kayıtları (SEÇ) seçin ve bunları id alanına göre ters sırada sıralayın (SİPARİŞ TARAFINDAN).

SEÇ * FROM tbl_name SİPARİŞ ID DESC;
6. ( SEÇME) Tüm (*) kayıtları ( İTİBAREN) tablolar kullanıcılar ve sırala їх ( TARAFINDAN SİPARİŞ) sahada İD büyüme sırasına göre, limit ( SINIR) ilk 5 kayıt.

SEÇ * KULLANICILARDAN SİPARİŞ KİMLİĞİ LIMIT 5;
7. Tablolardan tüm kayıtları seçin kullanıcılar, alan isim anlamı onayla gena.

SELECT * WHERE kullanıcılardan fname="Gena";
8. Tablolardan tüm kayıtları seçin kullanıcılar, de alan değeri isim dan başla Ge.

SEÇİN * "Ge%" GİBİ fname GİBİ KULLANICILARDAN;
9. Tablolardan tüm kayıtları seçin kullanıcılar, de isim ile bitmek hayır ve artan değer sırasına göre kayıtların sırasına göre İD.

SELECT * WHERE Fname LIKE "%na" SİPARİŞ TARAFINDAN KULLANICILARDAN SİPARİŞ;
10. Sütunlardan tüm verileri seçin isim, isim tablolardan kullanıcılar.

fname, lname FROM kullanıcılardan SEÇ;

11. Veri tablolarınızda ülke bulundurmanız caizdir. Dolayısıyla, yalnızca özetlenen anlamların bir listesini görmek istiyorsanız (örneğin, Rusya 20 kez gösterilmedi, yalnızca bir kez gösterildi), o zaman DISTINCT galip gelir. Vivede, z masi, yani Rusya, Ukrayna, Beyaz Rusya tekrar ediliyor. Bu sırayla tablolardan kullanıcılar sütunlar ülke TÜM BENZERSİZ DEĞERLER VERİLECEKTİR

KULLANICILARDAN AYRI ÜLKE SEÇİN;
12. Tablolardan tüm satır verilerini seçin kullanıcılar de yaş Mayıs değerleri 18.19 ve 21'dir.

SEÇİN * KULLANICILARDAN OLDUĞU YERDE (18,19,21);
13. MAKSİMUM değeri seçin yaş tablolarda kullanıcılar. Bu yüzden tablodaki en büyük değere sahipsin yaş(İngilizce Vik'ten) 55 alırsanız, sonuç 55 olacaktır.

kullanıcılardan max(yaş) SEÇİN;
14. Tablolardan veri seçin kullanıcılar tarlalar arasında isimі yaş DE yaş en düşük değeri alır.

Kullanıcılardan isim, min(yaş) SEÇİN;
15. Tablolardan veri seçin kullanıcılar sahada isim DE İD EŞİT DEĞİL 2.

WHERE id!="2";

3. Basit INSERT (yeni giriş) talebi

SOKMAK- PERSHOPCHATKOVO'nun veri tabanından bir kayıt eklemesine izin veren istek. Veritabanında YENİ bir kayıt (satır) oluşturmak için.

1. Tabloda yeni bir rekor kırın kullanıcılar, alana yakın isim Sergiy'i ekleyin ve sahaya yaş 25 ekleyin. Bu sırada tabloya verilen değerlere sahip yeni bir satır eklenir. Daha fazla sütun varsa, koku ya boş ya da kilitlerin arkasına yerleştirilmiş değerlerle bırakılacaktır.

INSERT INTO kullanıcılar (isim, yaş) DEĞERLER ("Sergey", "25");

4. Sadece MySQL veritabanına güncelleyin

GÜNCELLEME– veri tabanındaki mevcut satıra sulama değerinin ÜZERİNE YAZILMASI veya EKLENMESİNE izin veren istek. Örneğin, hazır bir satır varsa, o zaman yenisinde dönüş parametresini yeniden yazmak gerekir, şarapların kırıkları saate göre değişir.

1. masada kullanıcılar yaş istasyon 18.

GÜNCELLEME kullanıcıları SET yaş = "18" WHERE id = "3";
2. İlk istekte olduğu gibi, yalnızca iki alanın ve daha fazlasının üzerine yazıldığı isteğin sözdizimini okur.
tablolarda kullanıcılar DE id kapı 3 alan değerleri yaş staє 18 ve ülke Rusya.

GÜNCELLEME kullanıcıları SET age = "18", country = "Rusya" WHERE id = "3";

5. Basit DELETE (kayıt silme) MySQL veritabanına yazma

SİLMEK- tablodan hangi satırı gördüğünüzü sorun.

1. Tablodan bir satıra bakın kullanıcılar DE İD hoşçakal 10.

DELETE FROM users WHERE id = "10";

6. MySQL veritabanına sadece DROP (tabloyu kaldır)

DÜŞÜRMEK- Masayı gören Zapit.

1. Tabloya tekrar bakın tbl_name.

DROP TABLE tbl_name;

7. MySQL veritabanına katlama sorgusu

Koristuvach'ları bilgilendirmek için doğru zamanda olabilmek için yardım isteyin.

Kullanıcılardan, yöneticilerden kimlik, ad, ülke SEÇİN NEREDE TO_DAYS(NOW()) - TO_DAYS(kayıt_tarihi)<= 14 AND activation != "0" ORDER BY registration_date DESC;
Danium katlanabilir güçlü VIBIRAJ hoparlörler kimlik, ad, ülke U TABLOLAR kullanıcılar, yöneticiler DE Kayıt Tarihi(tarih) daha eski değil 14 günler ben aktivasyon TESLİM EDİLMEDİ 0 , Göre sırala Kayıt Tarihi doğru sırada (koçanın üzerinde yeni).

GÜNCELLEME kullanıcıları SET age = "18+" WHERE yaş = (WHERE FROM kullanıcılarından yaş SEÇİN erkek = "erkek");
Rehberlik sözde kıçıdır arama istemek SQL'de. 18+ için ortaokullu olmak, insan olmak. Bu tür seçenekleri önermiyorum. Özel bir nottan, bir okremikh çaçası oluşturmak daha iyi diyeceğim - koku daha verimli olacak.

8. MySQL veritabanına ve PHP'ye çalıştırın

MySQL'de, PHP'de sıfırlama ve tp değerleri gibi değişiklikleri ekleyebilirsiniz. popo çifti

1. Tablolardan tüm kayıtları seçin kullanıcılar, alan isim değişikliğin anlamını onaylayın $isim.

SELECT * WHERE kullanıcılardan fname="$name";
2. Masalarda kullanıcılar DE id kapı 3 alan değerleri yaş değiştirilen $yaşın değeri değiştirilir.

GÜNCELLEME kullanıcıları SET age = "$age" WHERE id = "3";

Saygı duymak! Hala bir popoya ihtiyacınız varsa, yorumlara yemek yazın!

Mobil ekler