O czym chcesz poczytać na blogach?

Insert into

Coffee Free Code

TABLE tree ( id INTEGER PRIMARY KEY, parent INTEGER REFERENCES tree(id) ON DELETE CASCADE, value VARCHAR(100) ); INSERT INTO tree VALUES (1, NULL, 'a'); INSERT INTO tree VALUES (2, NULL, 'b'); INSERT INTO tree VALUES (11, 1, 'aa'); INSERT INTO tree VALUES (111, 11, 'aaa'); INSERT INTO tree VALUES (112, 11, 'aab'); INSERT INTO tree VALUES (12, 1, 'ab'); INSERT INTO tree VALUES (121, 12, 'aba'); INSERT INTO tree VALUES (122, 12, 'abb'); INSERT INTO tree VALUES (21, 2, 'ba'); INSERT INTO tree VALUES (211, 21, 'baa'); 

Wiele prostych operacji da się wykonać na tej strukturze za pomocą nie skąplikowanych zapytań SQL. Poniższe przykłady pokazują operacje dla rekordu, którego wartość wynosi 'ab'. Warto zwrócić uwagę na usuwanie danych (za pomocą.

oskarj.wordpress.com blog

#define FALSE 0
#define TRUE 1

/*Numer linii parsera.*/
extern int yylineno;

/*Plik wejscia i wyjscia.*/
extern FILE *yyin, *yyout;

struct Intern{
string pl;
string en;
};

%}

%token SELECT
%token FROM
%token WHERE
%token ORDER
%token GROUP
%token BY
%token LIKE
%token AS
%token INSERT
%token UPDATE
%token DELETE
%token SET
%token INTO
%token VALUES
%token JOIN
%token ON

%token PRIMARY
%token FOREIGN
%token KEY
%token GRANT
%token CREATE
%token DROP
%token ALTER
%token REFERENCES
%token TO
%token WITHGRANT

%token DATABASE
%token TABLE

%token START
%token END
%token SR
%token AST
%token ZNAK
.

Jasne i ciemne strony baz danych

NULL   DROP TABLE dbo.PerfCounters; GO CREATE TABLE dbo.PerfCounters (   PerfCounterID int NOT NULL IDENTITY(1,1) PRIMARY KEY,   Category nvarchar(4000) NOT NULL,   Counter nvarchar(4000) NOT NULL,   Instance nvarchar(4000) NOT NULL DEFAULT '',   Machine nvarchar(256) NOT NULL DEFAULT '.',   Description nvarchar(4000) NULL,   WarningMinValue float NULL,   WarningMaxValue float NULL ); GO INSERT INTO dbo.PerfCounters ( Category, Counter, Instance, Machine, Description, WarningMinValue, WarningMaxValue ) VALUES   ('Procesor', 'Czas procesora (%)', '_Total', '.', 'Zużycie procesora. Ma być poniżej 50%.', NULL, 50),   ('Dysk fizyczny', 'Średnia długość kolejki dysku', '0 C:', '.', 'Kolejka dysku C:. Ma być poniżej 2.', NULL, 2),   ('MSSQL$SQL2008R2:Buffer Manager', 'Page life.

Programowanie PHP, Informacjie, Skrypty, Kod, Css, Html, C++

(0.05 sec)”. Oznacza to że serwer zrozumiał nasze żądanie i utworzył tabelę.

Kolejną bardzo ważną formułą, którą używał będziesz najczęściej jest wprowadzanie danych do tabeli. Dokonuje się tego za pomocą instrukcji „insert” – wprowadź. Zakładamy, że nasz pokój będzie posiadał telewizor i radio, Wprowadźmy zatem dane:

mysql> insert into moj_pokoj values(NULL, "telewizor", "czarny", "12 maja 2000r");

mysql> insert into moj_pokoj values(NULL, "radio", "srebro", "12 maja 2000r");

Nasz pokój posiada teraz radio i telewizor, ale jak to sprawdzić czy rzeczywiście? Wypiszmy zawartość tabelki na ekranie.

mysql> select * from moj_pokoj;

+-----------+---------------+--------+---------------+

C# Blog | C# .NET programowanie

Tylko pojedyncze rekordy.
W moim przypadku niestety musimy to zapytanie wykonywać w pętli. 1 000 x 40ms = 40sekund. Nie przeskoczymy tych 40ms. A to oczywiście nie wszystko, bo danych równie dobrze może być 10x więcej.

To jest chyba ten przypadek, gdzie trzeba wysłać jedno wielkie zapytanie z posklejanych 1 000 razy pojedynczych INSERTÓW. Jeden ogromny string. Bardzo nieładne, ale jedyny sposób by udało się zmieścić w sensownym czasie. Nie jest to aplikacja internetowa, więc żadne SQL Injection i pochodne nam nie grożą.

Przykład okropnego, lecz pomocnego sklejania stringów

 public void SendThemAllInOneUglyString() { var sb = new StringBuilder(); var letters = GetAlphabet(); foreach (var letter in letters) { sb.AppendFormat( "INSERT INTO Accessories(name) VALUES('{0}');", letter); // Below sql syntax does not work in SQL Server 2005 (only 2008 and newer) // INSERT INTO Accessories(name) VALUES ('A'), ('B') // so in the code I use more general approach shown below // INSERT INTO Accessories(name) VALUES ('A') // INSERT INTO Accessories(name) VALUES ('B') } using (var connection = new.

Michał Urbański Blog

using (SqlCommand cmd = new SqlCommand(query, cn))
{
//Execute query try{
int rowsAffected = cmd.ExecuteNonQuery();
if (rowsAffected != 0)
{
System.Diagnostics.Debug.WriteLine("Rows inserted: " + rowsAffected);
}
else
{
System.Diagnostics.Debug.WriteLine("No rows inserted!");
}
}
catch(Exception ex)
{
System.Diagnostics.Debug.WriteLine("Error executing query");
System.Diagnostics.Debug.WriteLine(ex.Message);
}
}
Najczęściej wartości przeznaczone do wstawienia do tabeli pochodzą ze zmiennych. Należałoby więc uczynić coś, aby zamiast wpisywanych na sztywno wartości przekazywać wartości zmiennych. Zmienne do zapytania można przekazać poprzez umieszczenie w klauzuli VALUES (….) nazw tych zmiennych ze znakiem @, czyli w takiej postaci, jak deklarowane są zmienne w języku T-SQL:
 
string query = "INSERT INTO dbo.Addresses (City, Street) VALUES (@City, @Street);";
using (SqlCommand cmd = new SqlCommand(query, cn))
{
//Execute query try{
int rowsAffected = cmd.ExecuteNonQuery();
if (rowsAffected != 0)
{
System.Diagnostics.Debug.WriteLine("Rows inserted: " + rowsAffected);
}
else
{
System.Diagnostics.Debug.WriteLine("No rows inserted!");
}
}
catch(Exception ex)
{
System.Diagnostics.Debug.WriteLine("Error executing query");
System.Diagnostics.Debug.WriteLine(ex.Message);
}
}
Najczęściej wartości przeznaczone do wstawienia do tabeli pochodzą ze zmiennych. Należałoby.

Takietam

Sp_helpsort

u mnie dało odpowiednio:
Polish_CI_AS
lub
Polish, case-insensitive, accent-sensitive, kanatype-insensitive, width-insensitive

Oznacza to, że ustawiono sortowanie bez względu na wielkość znaków (CI), ale z wrażliwością na akcenty (AS). Aby rozróżniać wielkość znaków ustawiamy COLLATE w zapytaniu:

CREATE TABLE #t ( k1 varchar(10) ) INSERT INTO #t VALUES ('Mars') INSERT INTO #t VALUES ('mars') INSERT INTO #t VALUES ('maRs') INSERT INTO #t VALUES ('MARS') SELECT * FROM #t WHERE k1 = 'mars' SELECT * FROM #t WHERE k1 COLLATE Polish_CS_AS = 'mars' DROP TABLE #t

Pierwszy SELECT zwróci wszystkie cztery wiersze, ponieważ weźmie pod uwagę globalne ustawienie sortowania. W drugim już wymuszamy branie pod uwagę wielkości.