- •Оператор Add Column
- •Оператор Add Map
- •Оператор Alter Button
- •Оператор Alter ButtonPad
- •Оператор Alter Cartographic Frame
- •Оператор Alter Control
- •Оператор Alter MapInfoDialog
- •Оператор Alter Menu
- •Оператор Alter Menu Bar
- •Оператор Alter Menu Item
- •Оператор Alter Object
- •Оператор Alter Table
- •Оператор AutoLabel
- •Оператор Beep
- •Оператор Browse
- •Предложение Brush
- •Функция ButtonPadInfo( )
- •Оператор Call
- •Функция•CartesianArea( )
- •Функция CartesianBuffer( )
- •Функция CartesianDistance ( )
- •Функция CartesianObjectLen( )
- •Функция CartesianPerimeter( )
- •Функция Centroid( )
- •Предложение CharSet
- •Функция ChooseProjection$()
- •Оператор Close All
- •Оператор Close File
- •Оператор Close Table
- •Оператор Close Window
- •Функция CommandInfo()
- •Оператор Commit Table
- •Оператор Continue
- •Предложения Control Button / OKButton / CancelButton
- •Предложение Control CheckBox
- •Предложение Control EditText
- •Предложение Control GroupBox
- •Предложения Control ListBox / MultiListBox
- •Предложение Control PopupMenu
- •Предложение Control RadioGroup
- •Предложение Control StaticText
- •Функция ConvexHull( )
- •Предложение CoordSys
- •Оператор Create Arc
- •Оператор Create ButtonPad
- •Оператор Create ButtonPads As Default
- •Оператор Create Cartographic Legend
- •Функция CreateCircle( )
- •Оператор Create Ellipse
- •Оператор Create Frame
- •Оператор Create Grid
- •Оператор Create Index
- •Оператор Create Legend
- •Оператор Create Line
- •Оператор Create Map
- •Оператор Create Map3D
- •Оператор Create Menu
- •Оператор Create Menu Bar
- •Оператор Create Object
- •Оператор Create Pline
- •Оператор Create Point
- •Оператор Create Ranges
- •Оператор Create Rect
- •Оператор Create Redistricter
- •Оператор Create Region
- •Оператор Create Report From Table
- •Оператор Create RoundRect
- •Оператор Create Styles
- •Оператор Create Table
- •Оператор Create Text
- •Функция CreateText( )
- •Функция DateWindow( )
- •Оператор DDEExecute
- •Оператор DDEPoke
- •Оператор DDETerminate
- •Оператор DDETerminateAll
- •Оператор Declare Function
- •Оператор Declare Sub
- •Оператор Define
- •Оператор Delete
- •Оператор Dialog
- •Оператор Dialog Preserve
- •Оператор Dialog Remove
- •Оператор Dim
- •Оператор Do Case...End Case
- •Оператор Do...Loop
- •Оператор Drop Index
- •Оператор Drop Map
- •Оператор Drop Table
- •Оператор End MapInfo
- •Оператор End Program
- •Процедура EndHandler
- •Оператор Error
- •Оператор Exit Do
- •Оператор Exit For
- •Оператор Exit Function
- •Оператор Exit Sub
- •Оператор Export
- •Оператор Fetch
- •Оператор Find
- •Оператор Find Using
- •Предложение Font
- •Оператор For...Next
- •Процедура ForegroundTaskSwitchHandler
- •Функция FormatDate$
- •Оператор Function...End Function
- •Оператор Get
- •Оператор Global
- •Оператор Goto
- •Оператор Graph
- •Оператор If...Then
- •Оператор Import
- •Оператор Include
- •Оператор Input #
- •Оператор Insert
- •Функция Int( )
- •Функция IsPenWidthPixels()
- •Оператор Kill
- •Функция LabelFindByID( )
- •Функция LabelFindNext( )
- •Функция Labelinfo( )
- •Оператор Layout
- •Функция LegendFrameInfo( )
- •Функция LegendInfo( )
- •Функция LegendStyleInfo( )
- •Оператор Line Input
- •Процедура Main
- •Функция MakeCustomSymbol( )
- •Функция MakeFontSymbol( )
- •Оператор Map
- •Функция Map3dInfo( )
- •Оператор Menu Bar
- •Функция MenuitemInfoByID( )
- •Оператор Metadata
- •Оператор Note
- •Функция NumAllWindows( )
- •Оператор Objects Check
- •Оператор Objects Combine
- •Оператор Objects Enclose
- •Оператор Objects Erase
- •Оператор Objects Intersect
- •Оператор Objects Overlay
- •Оператор Objects Split
- •Оператор OnError
- •Оператор Open File
- •Оператор Open Report
- •Оператор Open Table
- •Оператор Open Window
- •Оператор Pack Table
- •Предложение Pen
- •Функция PenPattern()
- •Функция PenWidthToPoints()
- •Функция PointsToPenWidth()
- •Оператор Print
- •Оператор Print #
- •Оператор PrintWin
- •Оператор ProgressBar
- •Оператор Put
- •Оператор Randomize
- •Оператор ReDim
- •Оператор Register Table
- •Оператор Reload Symbols
- •Процедура RemoteMapGenHandler
- •Процедура RemoteMsgHandler
- •Оператор Remove Cartographic Frame
- •Оператор Remove Map
- •Оператор Rename File
- •Оператор Rename Table
- •Оператор Reproject
- •Оператор Resume
- •Оператор Rollback
- •Оператор Run Application
- •Оператор Run Command
- •Оператор Run Menu Command
- •Оператор Run Program
- •Оператор Save File
- •Оператор Save Window
- •Оператор Save Workspace
- •Оператор Seek
- •Процедура SelChangedHandler
- •Оператор Select
- •Оператор Server Begin Transaction
- •Оператор Server Bind Column
- •Оператор Server Close
- •Функция Server_ColumnInfo( )
- •Оператор Server Commit
- •Функция Server_Connect( )
- •Оператор Server Create Map
- •Оператор Server Disconnect
- •Функция Server_DriverInfo( )
- •Функция Server_EOT( )
- •Функция Server_Execute( )
- •Оператор Server Fetch
- •Функция Server_GetodbcHConn( )
- •Функция Server_GetodbcHStmt( )
- •Оператор Server Link Table
- •Функция Server_NumCols( )
- •Функция Server_NumDrivers( )
- •Оператор Server Refresh
- •Оператор Server Rollback
- •Оператор Server Set Map
- •Оператор Set Application Window
- •Оператор Set Area Units
- •Оператор Set Browse
- •Оператор Set Cartographic Legend
- •Оператор Set Command Info
- •Оператор Set CoordSys
- •Оператор Set Date Window
- •Оператор Set Digitizer
- •Оператор Set Distance Units
- •Оператор Set Drag Threshold
- •Оператор Set Event Processing
- •Оператор Set File Timeout
- •Оператор Set Format
- •Оператор Set Graph
- •Оператор Set Handler
- •Оператор Set Layout
- •Оператор Set Legend
- •Оператор Set Map
- •Оператор Set Map3D
- •Оператор Set Next Document
- •Оператор Set Paper Units
- •Оператор Set ProgressBars
- •Оператор Set Redistricter
- •Оператор Set Resolution
- •Оператор Set Shade
- •Оператор Set Style
- •Оператор Set Table
- •Оператор Set Target
- •Оператор Set Window
- •Оператор Shade
- •Оператор StatusBar
- •Оператор Stop
- •Функция StyleAttr( )
- •Оператор Sub...End Sub
- •Предложение Symbol
- •Оператор Terminate Application
- •Функция Time()
- •Процедура ToolHandler
- •Оператор Type
- •Оператор UnDim
- •Функция UnitAbbr$( )
- •Оператор Unlink
- •Оператор Update
- •Оператор Update Window
- •Оператор While...Wend
- •Процедура WinChangedHandler
- •Процедура WinClosedHandler
- •Процедура WinFocusChangedHandler
- •Оператор Write #
- •Приложение A: Таблица кодов символов
- •Приложение В: Арифметические и географические операторы
- •ИНДЕКС
Функция Server_EOT( )
Функция Server_EOT( )
Назначение:
Определяет, был ли достигнут конец результирующего набора в процессе последовательной выборки записей, выполнявшейся оператором Server Fetch.
Синтаксис:
Server_EOT (StatementNumber)
StatementNumber – целое значение, номер SQLLоператора.
Возвращаемое значение:
Логическое.
Описание:
Функция Server_EOT() возвращает TRUE, если предыдущий оператор выборки не нашел в результирующем наборе данных для возврата; в противном случае возвращает FALSE. Значение TRUE возвращается как при попытке выбрать предыдущую запись сразу же после выборки первой записи набора, так и в случае выборки следующей записи после последней записи набора.
Пример:
Dim hdbc, hstmt As Integer
hdbc = Server_Connect(”QELIB”, ”DSN=ORACLE7;DLG=1”) hstmt = Server_Execute(hdbc, ”Select * from ADDR”) Server hstmt Fetch FIRST
While Not Server_EOT(hstmt)
’ Обработка каждой строки данных ...
Server hstmt Fetch Next Wend
Смотрите также:
Server Fetch
468 |
Справочник MapBasic |
Функция Server_Execute( )
Функция Server_Execute( )
Назначение:
Посылает SQLLстроку для исполнения на удаленный сервер данных.
Синтаксис:
Server_Execute(ConnectionNumber, server_string)
ConnectionNumber – номер соединения с сервером данных.
server_string – строка, представляющая любой корректный SQLLоператор, поддерживаемый сервером, с которым установлено соединение.
Возвращаемое значение:
Целое.
Описание:
Функция Server_Execute пересылает SQLLстроку, заданную параметром server_string и представляющую SQLLоператор, через соединение с сервером, указанное параметром Connec tionNumber. Любой корректный SQLLоператор, поддерживаемый активным сервером, является допустимым значением параметра server_string. Информацию о корректных SQLLоператорах смотрите в руководстве по языку SQL для СУБД на Вашем сервере.
Эта функция возвращает номерLуказатель (handle) оператора, используемый для ассоциации (через параметр StatementNumber) последующих SQLLобращений (таких как Fetch и Close) с конкретным SQLLоператором.
Вы должны обеспечить выполнение оператора Server Close для каждого вызова функции Server_Execute() как можно быстрее по завершении использования указателя SQLLоператора. Для операторов типа Select – после выборки требуемых данных. При этом на удаленном сервере данных будет закрыт курсор и освобожден результирующий набор. В противном случае Вы можете превысить лимит на число открытых курсоров, и дальнейшие обращения к базе данных исполняться не будут. Не все серверы баз данных поддерживают курсоры с прямой и обратной прокруткой. Для других SQLLоператоров выдайте оператор Server Close сразу же после вызова функции Server_Execute.
Dim hdbc, hstmt As Integer
hdbc = Server_Connect(”QELIB”, ”DSN=ORACLE7;DLG=1”) hstmt = Server_Execute(hdbc, ”Select * from ADDR”) Server hstmt Close
Пример:
Dim hdbc, hstmt As Integer
hdbc = Server_Connect(”QELIB”, DSN=ORACLE7;DLG=1”)
hstmt = Server_Execute(hdbc, ”CREATE TABLE NAME_TABLE (NAME CHAR (20))”)
Server hstmt Close
hstmt = Server_Execute(hdbc, ”INSERT INTO NAME_TABLE VALUES (‘Steve’)”) Server Close hstmt
hstmt = Server_Execute(hdbc, ”UPDATE NAME_TABLE SET name = ‘Tim’”) Server Close hstmt
Server hdbc Disconnect
Смотрите также:
Server Close, Server Fetch
Справочник MapBasic |
469 |
Оператор Server Fetch
Оператор Server Fetch
Назначение:
Осуществляет выборку записей результирующего набора с удаленного сервера данных.
Синтаксис:
Server StatementNumber Fetch [NEXT|PREV|FIRST|LAST|[REC]recno] или
Server StatementNumber Fetch INTO Table [FILE path]
StatementNumber – целое значение, номер SQLLоператора.
Описание:
Оператор Server Fetch извлекает записи результирующего набора (заданного значением State mentNumber SQLLоператора, создавшего набор) из сервера данных. Для построчной выборки данных они помещаются в локальную область хранения, и могут быть связаны с переменными посредством команд Server Bind Column. Для выборки данных по столбцам применяется функL ция Server_ColumnInfo(SRV_COL_INFO_VALUE). Можно также в одной операции выбрать полный результирующий набор в таблицу MapInfo, используя предложение INTO Table.
Выполнение операторов Server Fetch и Server Fetch Into прерывается с установкой кода ошибки ERR() = ERR_SRV_ESC при нажатии пользователем клавиши ESC, что позволяет Вашему MapBasicLприложению использовать команды Server Fetch для обработки этого собыL тия.
По исполнении оператора Server Fetch Into таблица MapInfo фиксируется, и для нее нет незавершенных транзакций. Все символьные поля, превышающие 254 байта, усекаются; все двоичные (неструктурированные) поля загружаются в таблицу как шестнадцатиричные симL вольные строки двойной длины. Имена столбцов в загруженной таблице будут использовать псевдонимы столбцов, если в запросе задавались псевдонимы.
Обработка NullUзначений
Если был исполнен SQLLоператор Select с последующей выборкой записи, включающей столL бец таблицы, который содержит пустое (null) значение, то происходит следующее. Поскольку в MapInfo не поддерживается концепция пустых значений в таблице или переменной, используL ется значение по умолчанию в рамках домена для соответствующего типа данных – значение MapBasicLпеременной, декларированной в инструкции Dim, но не инициализированной. Однако при этом обеспечивается индикация возврата пустого значения.
Для связанных переменных (см. оператор Server Bind Column) могут быть заданы переменные состояния, значения которых будут указывать на возврат пустого значения при выборке. Для столбцов, не связанных с переменными, функция Server_ColumnInfo() с атрибутом SRV_COL_INFO_STATUS будет возвращать статус столбца, информирующий о возможно пустом значении.
Как MapInfo интерпретирует типы данных?
Смотрите в Приложении 4 Руководства пользователя MapBasic информацию о том, как MapInfo интерпретирует типы данных.
470 |
Справочник MapBasic |
Оператор Server Fetch
Ошибки:
Оператор Server n Fetch Into Table будет генерировать ошибку для любых неудачных попыток вставки записей в локальную таблицу MapInfo. Операторы типа Server n Fetch [Next|Prev|recno] генерируют ошибки, если запрашиваемой записи нет в наличии.
Примеры:
’Пример выборки в таблицу MapInfo Dim hdbc, hstmt As Integer
hdbc = Server_Connect(”QELIB”, ”DSN=ORACLE7;DLG=1”) hstmt = Server_Execute(hdbc, ”Select * from emp”) Server hstmt Fetch Into ”MyEmp”
Server hstmt Close
’Пример выборки с использованием связанных переменных Dim hdbc, hstmt As Integer
dim NameVar, AddrVar as String
dim NameStatus, AddrStatus as Integer
hdbc = Server_Connect(”QELIB”, ”DSN=ORACLE7;DLG=1”)
hstmt = Server_Execute(hdbc, ”Select Name, Addr from emp”) Server hstmt Bind Column 1 to NameVar, NameStatus
Server hstmt Bind Column 2 to AddrVar, AddrStatus Server hstmt Fetch Next
While Not Server_Eot(hstmt)
Print ”Name = ” + NameVar + ”; Address = ” + AddrVar Server hstmt Fetch Next
Wend
Смотрите также:
Server_ColumnInfo()
Справочник MapBasic |
471 |