SQL.REQUEST (funkcija SQL.REQUEST)

Šajā rakstā paskaidrota funkcijas SQL.REQUEST formulas sintakse un lietošana programmā Excel.

Svarīgi! : 

  • Sākot ar Excel 2010, iegūšanas un transformēšanas (Power Query) pieredze nodrošina uzlabotu funkcionalitāti datu importēšanai no ārējiem datu avotiem un efektīvi aizstāj SQL.REQUEST funkciju.

  • SQL.REQUEST funkcijas izmantošana netiek atbalstīta ārpus Microsoft Excel 2007.

  • Daļa satura šajā tēmā var nebūt attiecināma uz atsevišķām valodām.

Apraksts

Funkcija SQL.REQUEST savieno ar ārēju datu avotu un veic vaicājumu no darblapas. Pēc tam tā atgriež rezultātu kā masīvu, un makro programmēšana nav jāveic. Ja šī funkcija nav pieejama, jāinstalē Microsoft Excel ODBC pievienojumprogramma (XLODBC.XLA).

Sintakse

SQL.REQUEST(savienojuma_virkne,[izvades_ats],[draivera_uzvedne],[vaicājuma_teksts],[kolonnu_nosaukumi_loģiski])

Funkcijas SQL.REQUEST sintaksei ir šādi argumenti.

  • Savienojuma_virkne     Obligāts arguments. Piegādā informāciju, piemēram, datu avota nosaukumu, lietotāja ID un paroles, kas nepieciešamas, lai izmantotais draiveris pieslēgtos datu avotam, ievērojot draivera formātu. Šajā tabulā ir parādīti trīs draiveru trīs savienojuma virkņu piemēri.

Draiveris

Savienojuma_virkne

dBASE

DSN=NWind;PWD=test

SQL Server

DSN=MyServer;UID=dbayer; PWD=123;Database=Pubs

ORACLE

DNS=My Oracle Data Source;DBQ=MYSER VER;UID=JohnS;PWD=Sesame

  • Pirms mēģināt pieslēgties datu avotam, vispirms ir jādefinē savienojuma_virknē izmantotais datu avota nosaukums (DSN).

  • Savienojuma_virkni var ievadīt kā masīvu vai kā virkni. Ja savienojuma_virkne pārsniedz 250 rakstzīmes, tā jāievada kā masīvs.

  • Ja funkcija SQL.REQUEST nevar piekļūt datu avotam, izmantojot savienojuma_virkni, tā atgriež kļūdas vērtību #N/A.

  • Izvades_ats     Neobligāts arguments. Atsauce uz šūnu, kurā jāievieto pabeigtā savienojuma virkne. Ja SQL.REQUEST tiek ievadīta darblapā, izvades_ats tiek ignorēta.

    • Izmantojiet izvades_ats, kad funkcijai SQL.REQUEST jāatgriež pabeigtā savienojuma virkne (šajā gadījumā SQL.REQUEST jāievada makro lapā).

    • Ja izvades_ats ir izlaista, funkcija SQL.REQUEST neatgriež pabeigtu savienojuma virkni.

  • Draivera_uzvedne     Neobligāts arguments. Norāda, kad tiek parādīts draivera dialoglodziņš un kuras opcijas ir pieejamas. Izmantojiet kādu no šajā tabulā raksturotajiem skaitļiem. Ja draivera_uzvedne ir izlaista, funkcija SQL.REQUEST kā noklusējuma lielumu izmanto 2.

Draivera_uzvedne

Apraksts

1

Draivera dialoglodziņš tiek parādīts vienmēr.

2

Draivera dialoglodziņš tiek parādīts tikai tad, ja savienojuma virknes sniegtā informācija un datu avota specifikācija nav pietiekama savienojuma veikšanai. Ir pieejamas visas dialoglodziņa opcijas.

3

Draivera dialoglodziņš tiek parādīts tikai tad, ja savienojuma virknes sniegtā informācija un datu avota specifikācija nav pietiekama savienojuma veikšanai. Dialoglodziņa opcijas izskatās neaktīvas un nav pieejamas, ja tās netiek pieprasītas.

4

Draivera dialoglodziņš netiek parādīts. Ja savienojums ir neveiksmīgs, tiek atgriezts kļūdas paziņojums.

  • Vaicājuma_teksts     Neobligāts arguments. Datu avotā izpildāmais SQL paziņojums.

    • Ja funkcija SQL.REQUEST nevar izpildīt vaicājuma_tekstu norādītajā datu avotā, tā atgriež kļūdas vērtību #N/A.

    • Vaicājumu var atjaunināt, apvienojot atsauces vaicājuma_tekstā. Turpmāk minētajā piemērā ikreiz, kad mainās $A$3, funkcija SQL.REQUEST izmanto jauno vērtību vaicājuma atjaunināšanai.

"SELECT Name FROM Customers WHERE Balance > "&$A$3&"".

Programma Microsoft Excel ierobežo virkņu garumu līdz 255 rakstzīmēm. Ja vaicājuma_teksts pārsniedz šo garumu, ievadiet vaicājumu vertikālā šūnu diapazonā un izmantojiet visu diapazonu kā vaicājuma_tekstu. Šūnu vērtības tiek apvienotas, izveidojot pilno SQL priekšrakstu.

  • Kolonnu_nosaukumi_loģiski     Neobligāts arguments. Norāda, vai kolonnu nosaukumi tiek atgriezti kā rezultātu pirmā rinda. Lai kolonnu nosaukumi tiktu atgriezti kā rezultātu pirmā rinda, iestatiet šo argumentu kā TRUE. Lai kolonnu nosaukumi netiktu atgriezti, izmantojiet FALSE. Ja Kolonnu_nosaukumi_loģiski ir izlaists, funkcija SQL.REQUEST neatgriež kolonnu nosaukumus.

Atgrieztā vērtība

  • Ja šī funkcija izpilda visas darbības, tā atgriež vaicājuma rezultātu masīvu vai vaicājuma skarto rindu skaitu.

  • Ja funkcija SQL.REQUEST nespēj piekļūt datu avotam, izmantojot savienojuma_virkni, tā atgriež kļūdas vērtību #N/A.

Piezīmes

  • Funkciju SQL.REQUEST var ievadīt kā masīvu. Ievadot SQL.REQUEST kā masīvu, tā atgriež šim diapazonam atbilstošu masīvu.

  • Ja šūnu diapazons ir lielāks par rezultātu kopu, funkcija SQL.REQUEST pievieno atgrieztajam masīvam tukšas šūnas, lai palielinātu to līdz vajadzīgajam lielumam.

  • Ja rezultāta kopa ir lielāka nekā diapazons, kas ievadīts kā masīvs, funkcija SQL.REQUEST atgriež visu masīvu.

  • Funkcijas SQL.REQUEST argumenti ir citādā kārtībā nekā funkcijas SQLRequest argumenti Visual Basic for Applications.

Piemērs

Pieņemsim, ka jāveic vaicājums dBASE datu bāzē ar nosaukumu DBASE4. Ievadot šūnā turpmāk minēto formulu, tiek atgriezts vaicājuma rezultātu masīvs, kura pirmā rinda ir kolonnu nosaukumi:

SQL.REQUEST("DSN=NWind;DBQ=c:\msquery;FIL=dBASE4", c15, 2, "Select Custmr_ID, Due_Date from Orders WHERE order_Amt>100", TRUE)

Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Office Insider programmai

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta aģentiem.

×