Visualizzazione post con etichetta sql. Mostra tutti i post
Visualizzazione post con etichetta sql. Mostra tutti i post

martedì 27 novembre 2012

Insert Japanese Characters in SQL Server

To insert Japanese Characters or when dealing with Unicode string constants in SQL Server, you must precede all Unicode strings with a capital letter N, and you need to use nvarchar for the colums.

If you do not prefix a Unicode string constant with N, SQL Server will convert it to the non-Unicode code page of the current database before it uses the string.

Use this meta in the webpage as well:


An example of query will be:


INSERT INTO dbo.sample VALUES (
 '12345'
 ,N'を許可し
 );

martedì 16 ottobre 2012

Migration From MySql to Sql Server

Ecco la procedura per la migrazione da MySql a SqlServer.


Scaricare Microsoft SQL Server Migration Assistant (SSMA) for MySQL (SSMA is a tool to automate migration from MySQL database to SQL Server)

Una volta scaricato, installato e avviato, la procedura è facilissima:

Collegare il DB MySql - Tasto in alto nella barra degli strumenti "Connect To MySql".
Collegare SqlServer - Tasto in alto nella barra degli strumenti "Connect To SqlServer".

Assicuratevi di avere configurato un utente con privilegi di amministrazione sia su MySql che su SqlServer.
Avremo quindi due schermate: una in alto con i nostri db in MySql ed una in basso con quelli di SqlServer.

In alto, fate tasto destro sul db da migrare e cliccate su Convert Schema. Questo crea il db e le tabelle in SqlServer.

In basso, fate click col tasto destro sul nuovo db creato automaticamente e cliccate su Synchronize With Database. Questo effettuerà la vera connessione col db.

Infine cliccate su Migrate Data, in alto nella balla degli strumenti.

martedì 1 settembre 2009

[SQL] [ACCESS] - COUNT DISTINCT in Access

In DB come SQL Server, Oracle e MySql, la funzione COUNT(Distinct) conta il numero di termini univoci in un dato rowset.

SELECT Count(Distinct risposte) AS R FROM tRisposte

In Access per fare la stessa cosa dobbiamo invece scrivere:
SELECT Count(*) AS R
FROM
(SELECT DISTINCT risposte FROM tRisposte) AS T;

lunedì 3 novembre 2008

[ASP] [SQL] - Piccolo motore di ricerca

Se ricevo una variabile di nome "TUTTI I CAMPI" (vedi Passaggio di Variabili) effettuo la ricerca su tutti i campi, scrivendo al posto di "nome_campo1", "nome_campo2", etc, TUTTI i nomi dei miei campi.
Altrimenti riceverò una variabile col nome del campo in cui cercare.

if nome_campo = "TUTTI I CAMPI" then
qry="SELECT * FROM nome_tabella WHERE nome_campo1 LIKE '%"&parola&"%' OR nome_campo2 LIKE '%"&parola&"%' ORDER BY nome_campo DESC ;"

else
qry="SELECT * FROM nome_tabella WHERE "& nome_campo &" LIKE '%"&parola&"%' ORDEER BY "& nome_campo &" asc ;"
end if

[SQL] [ASP] - UPDATE

UPDATE in SQL e ASP.
Il carattere & _ permette di andare a capo in ASP.

CNN=Application("CNN")
set conn=Server.CreateObject("ADODB.Connection")
conn.open CNN
Set rs = Server.CreateObject("ADODB.Recordset")
qry="UPDATE nome_tabella "& _
"SET nome_campo = '"& valore_variabile &"', nome_campo2 = '"& valore_variabile2 &"'" & _
"WHERE nome_campo = "& valore_variabile &" ;"
conn.execute(qry)

rs.close
set rs=nothing
conn.close
set conn=nothing

giovedì 30 ottobre 2008

[SQL] [ASP] - SELECT con selezioni dal DB

<select name="nome_select">
<option value=""selected>Seleziona qualcosa...</option>

<%
CNN=Application("CNN")
'imposta la connessione al database
Set objConn=Server.CreateObject("ADODB.Connection")

'apre la connessione al database
objConn.Open CNN

Set rs = Server.CreateObject("ADODB.Recordset")

sql = "SELECT * FROM nome_tabella ORDER BY nome_campo ASC"
rs.open sql, objconn
'se la query restituisce qualcosa..
if not rs.eof then
'ciclo fin quando la query estrae dati dal db
do until rs.eof

%>
<option value="<%= rs("campo1_estratto_dal_db")%> - <%=rs.fields("campo2_estratto_dal_db")%>">
<%= rs("campo1_estratto_dal_db")%> - <%=rs2("campo2_estratto_dal_db")%>
</option>

<%
rs.movenext
loop

end if

rs.close
set rs=nothing
conn.close
set conn=nothing
%>

</select>

[SQL] [ASP] - SELECT

CNN=Application("CNN")
set conn=Server.CreateObject("ADODB.Connection")
conn.open CNN
Set rs = Server.CreateObject("ADODB.Recordset")

qry="SELECT * FROM nome_tabella WHERE id = "& id &" ;"

rs.Open qry,conn

'se il db è vuoto...
if rs.eof then

'assegno 1 ad una variabile chiamata db_vuoto
db_vuoto = 1
%>

scrivo qualcosa in html...

<%
altrimenti...
else

'il db non è vuoto
db_vuoto = 0

nome_campo = rs.fields("nome_campo")

rs.MoveNext

rs.close
set rs = nothing
conn.close
set conn = nothing

[ASP] [SQL] - Visualizza i titoli dell ultime n notizie

Visualizzazione dei titoli di notizie precedenti.
L'ultima notizia sarà già visualizzata per intero (non presente in questo codice). Sotto quest'ultima notizia saranno visualizzati i titoli di n notizie passate nel formato xx/xx/xxxx (data) - Titolo Notizia.
Cliccando sul titolo si aprirà una popup con la visualizzazione della notizia per intero.
Il codice esclude il titolo dell'ultima notizia che è già visualizzata per intero.
NB.: l'href richiama una funzione Javascript non presente in questo codice ma di cui ho postato il codice precedentemente.

<%
'Connessioni al DB
CNN=Application("CNN")
set conn=Server.CreateObject("ADODB.Connection")
conn.open CNN

set rs=server.createobject("ADODB.recordset")

'seleziono il massimo id per escludere l'ultima notizia dalla visualizzazione
qry="SELECT MAX (id) as max_id FROM nome_tab WHERE parametri ;"
rs.Open qry,conn
id = rs.fields ("max_id")

Const CONST_DISPLAY = 3 'NUMERO DI NOTIZIE VISUALIZZATE
Dim i
Set rsQuery = Conn.Execute("SELECT * FROM nome_tabella WHERE parametro='parametro' AND (id < "&id&") ORDER BY id DESC")

'Se non ci sono notizie...
If rsQuery.EOF Then
%>
Dati in Aggiornamento...
<%
End If
'Altrimenti...
i = 1
While Not rsQuery.EOF And i <= CONST_DISPLAY
%>
<a href="javascript:openwindow('nome_popup.asp?id=<%=rsQUERY("id")%>','xxx<%=rsQUERY("id")%>',730,580,'yes' ,'no','1',5,4)">

'LCASE = Scrive TUTTO in minuscolo
'LEFT = TAGLIA i caratteri dopo l'n-esimo (in questo caso 29) e aggiunge "..."
<%= rsQuery("campo_data") %> - <% if (rsQuery("titolo")) > left (rsQuery("titolo"),65) then
Response.Write lcase(Left(rsQuery("titolo"),29)+"...")
else
Response.write lcase(replace(rsQuery("titolo")& "", VbCrLf, "<br/>"))
end if
%>
</a><br>
<%
rsQuery.MoveNext : i = i + 1
Wend

'Chiudo connessioni
rsQuery.close
set rsQuery =nothing
rs.close
set rs = nothing
%>

[SQL] [ASP] - SELECT MAX

Nella selezione del valore MASSIMO di un campo usare "AS" per assegnare il valore estratto al nome di un nuovo campo.

'apro connessioni al db
CNN=Application("CNN")
set conn=Server.CreateObject("ADODB.Connection")
conn.open CNN
set rs=server.createobject("ADODB.recordset")

'questa è la Query
qry="SELECT MAX (nome_campo_da_estrarre) AS max_nome_campo FROM nome_tabella WHERE qualcosa = ('in questo modo') AND (qualcosaltro='SI' OR qualcosaltro='NO') ;"

rs.Open qry,conn

'assegno ad una variabile il valore estratto
nome_variabile_campo_estratto = rs.fields ("max_nome_campo")

'stampo il valore
response.write nome_variabile_campo_estratto

mercoledì 29 ottobre 2008

[SQL] [ASP] - INSERT

CNN=Application("CNN") 'connessione al Db

set conn=Server.CreateObject("ADODB.Connection")
conn.open CNN

qry = "INSERT INTO nome_tabella (nome_campo1, nome_campo2) VALUES ( '"&valore1& "', '"&valore2& "');"
'response.write(qry) in caso di errori...
'response.end() in caso di errori...
conn.execute(qry)

conn.close
set conn=nothing