Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Function Reference : Microsoft SQL Server Functions : mssql_field_type

mssql_field_type

Gets the type of a field (PHP 4, PHP 5, PECL odbtp:1.1.1-1.1.4)
string mssql_field_type ( resource result [, int offset] )

Examples ( Source code ) » mssql_field_type

<?php
// Connect MSSQL
mssql_connect('local\SQLEXPRESS''sa''phplocal');
mssql_select_db('php');

// Send a select query to MSSQL
$query mssql_query('SELECT [name] FROM [php].[dbo].[persons]');

// Print the field type and length
echo    '\'' mssql_field_name($query0) . '\' is a type of ' 
        
strtoupper(mssql_field_type($query0)) . 
        
'(' mssql_field_length($query0) . ')';

// Free the query result
mssql_free_result($query);
?>

The above example will output something similar to:

'name' is a type of CHAR(50)


    

Code Examples / Notes » mssql_field_type

nicholas

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


huib

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


rmorales

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


Change Language


Follow Navioo On Twitter
mssql_bind
mssql_close
mssql_connect
mssql_data_seek
mssql_execute
mssql_fetch_array
mssql_fetch_assoc
mssql_fetch_batch
mssql_fetch_field
mssql_fetch_object
mssql_fetch_row
mssql_field_length
mssql_field_name
mssql_field_seek
mssql_field_type
mssql_free_result
mssql_free_statement
mssql_get_last_message
mssql_guid_string
mssql_init
mssql_min_error_severity
mssql_min_message_severity
mssql_next_result
mssql_num_fields
mssql_num_rows
mssql_pconnect
mssql_query
mssql_result
mssql_rows_affected
mssql_select_db
eXTReMe Tracker