PHP Doku:: Liefert den Typ eines Feldes - function.mssql-field-type.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzDatenbankerweiterungenAnbieterspezifische DatenbankerweiterungenMicrosoft SQL ServerMssql-Funktionenmssql_field_type

Ein Service von Reinhard Neidl - Webprogrammierung.

Mssql-Funktionen

<<mssql_field_seek

mssql_free_result>>

mssql_field_type

(PHP 4, PHP 5, PECL odbtp >= 1.1.1)

mssql_field_typeLiefert den Typ eines Feldes

Beschreibung

string mssql_field_type ( resource $result [, int $offset = -1 ] )

Gibt den Typ des Feldes Nr. offset aus result zurück.

Parameter-Liste

result

Der Bezeichner des Ergebnisses, das ausgewertet wird. Dieses Ergebnis stammt von einem Aufruf von mssql_query().

offset

Der Offset des Feldes, beginnend bei 0. Falls er nicht angegeben wurde, wird das aktuelle Feld verwendet.

Rückgabewerte

Gibt den Typ des angegebenen Feldes zurück. Im Fehlerfall wird FALSE zurückgegeben.

Beispiele

Beispiel #1 mssql_field_type()-Beispiel

<?php
// Mit MSSQL verbinden und Datenbank auswählen
mssql_connect('MANGO\SQLEXPRESS''sa''phpfi');
mssql_select_db('php');

// Eine select-Anfrage an MSSQL senden
$anfrage mssql_query('SELECT [name] FROM [php].[dbo].[persons]');

// Feldtyp und -länge ausgeben
echo '\'' mssql_field_name($anfrage0) . '\' ist vom Typ ' .
      
strtoupper(mssql_field_type($anfrage0)) .
      
'(' mssql_field_length($anfrage0) . ')';

// Den Ergebnisspeicher freigeben
mssql_free_result($anfrage);
?>

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:

'name' ist vom Typ CHAR(50)

Siehe auch


3 BenutzerBeiträge:
- Beiträge aktualisieren...
huib at bestia dot com
27.05.2005 12:18
If you need a more detailed discription of your column type,

This query shows your true datatypes like:

binary => binary
varbinary => varbinary
varchar => varchar
bit => bit
char => char
datetime => datetime
smalldatetime => smalldatetime
decimal => decimal
real => real
float => float
tinyint => tinyint
smallint => smallint
smallmoney => smallmoney
money => money
nchar => nchar
ntext => ntext
text => text
numeric => numeric
nvarchar => nvarchar
 

SELECT     sysobjects.name AS tableName, syscolumns.name AS columnName, systypes.name AS columnType
FROM         sysobjects INNER JOIN
                      syscolumns ON sysobjects.id = syscolumns.id INNER JOIN
                      systypes ON syscolumns.type = systypes.type AND syscolumns.xusertype = systypes.xusertype
nicholas at silverorange dot com
24.03.2005 15:39
The matching returned values for each of the common datatypes are:

binary => blob
varbinary => blob
varchar => char
bit => bit
char => char
datetime => datetime
smalldatetime => datetime
decimal => real
real => real
float => real
tinyint => int
smallint => int
smallmoney => money
money => money
nchar => char
ntext => text
text => text
numeric => numeric
nvarchar => char
rmorales at protel dot net dot mx
18.06.2003 8:46
Here i have an usable code for all u:

   I wanted to know if a field is nullable or if it's defined as a primary key, here are those functions definitions:

*Aditional Notes:
    if any of the tables are replicated in another database exactly , this code will not work well.

//-----to know if a field is nullable-------
function mssql_field_nullable($ip,$user,$pass,$table,$field)//starting from 1st field
{
      $conn=mssql_connect($ip,$user,$pass)or die;
      mssql_select_db('master');
      $result=mssql_query("SELECT syscolumns.isnullable
FROM sysobjects INNER JOIN
    syscolumns ON sysobjects.id = syscolumns.id WHERE sysobjects.name ='$table' AND syscolumns.isnullable = 1");
      $x=mssql_num_rows($result);
      mssql_close($conn);
      return ($x==1?1:0);

}
//-------to know if a field is a primary key-------
function mssql_field_key($ip,$user,$pass,$table,$field)//starting from 1st field
{
      $conn=mssql_connect($ip,$user,$pass)or die;
      mssql_select_db('master');
      $result=mssql_query("SELECT sysindexkeys.colid FROM sysobjects INNER JOIN sysindexkeys ON sysobjects.id = sysindexkeys.id WHERE sysobjects.name ='$table' AND sysindexkeys.colid = $field");
      $x=mssql_num_rows($result);
      mssql_close($conn);
      return ($x==1?1:0);

}
by R.M.R.A



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)