Category Archives: SQL Server

SQL Server

CAST and CONVERT

Explicitly converts an expression of one data type to another. CAST and CONVERT provide similar functionality.

Syntax

Using CAST:

CAST ( expression AS data_type )

Using CONVERT:

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

SqlCAST.gif

SQL Server

SQL SERVER 2000 – Requisitos

Principais requisitos minimos:

SISTEMA OPERATIVO
SQL Server 2000 Enterprise Edition and Standard Edition can run on the following operating systems:
  • Windows Server 2003 R2
  • Windows Server 2003, Standard Edition1
  • Windows Server 2003, Enterprise Edition2
  • Windows Server 2003, Datacenter Edition3
  • Windows® 2000 Server
  • Windows 2000 Advanced Server
  • Windows 2000 Datacenter Server
SQL Server 2000 Evaluation Edition and Developer Edition and Workgroup Edition can run on the following operating systems:
  • Operating systems listed above for Enterprise and Standard Editions
  • Windows XP Professional
  • Windows XP Home Edition
  • Windows 2000 Professional
SQL Server 2000 Personal Edition4 and SQL Server 2000 Desktop Engine (MSDE) can run on the following operating systems:
  • Operating systems listed above for Enterprise, Standard, Evaluation, and Developer Editions
  • Windows Server 2003, Web Edition5 (MSDE only)
  • Windows 98
  • Windows Millennium Edition (Windows Me)
MEMORIA
  • Enterprise Edition: 64 megabytes (MB) of RAM; 128 MB recommended
  • Standard Edition: 64 MB
  • Workgroup Edition: 64 MB
  • Evaluation Edition: 64 MB; 128 MB recommended
  • Developer Edition: 64 MB
  • Personal Edition: 128 MB for Windows XP; 64 MB for Windows 2000; 32 MB for other operating systems
  • MSDE: 128 MB for Windows XP; 64 MB for Windows 2000; 32 MB for other operating systems
DISCO
  • Enterprise, Standard, Workgroup, Evaluation, Developer, and Personal Editions require:
  • 95–270 MB of available hard disk space for the server; 250 MB for a typical installation.
  • 50 MB of available hard disk space for a minimum installation of Analysis Services; 130 MB for a typical installation.
  • 80 MB of available hard disk space for English Query.
  • MSDE requires 44 MB of available hard disk space.

SQL Server

Como saber que versão do SQL Server estou a correr?

2012


SELECT 'SQL Server '
+ CAST(SERVERPROPERTY('productversion') AS VARCHAR)
+ '-'
+ CAST(SERVERPROPERTY('productlevel') AS VARCHAR)
+ ' ('
+ CAST(SERVERPROPERTY('edition') AS VARCHAR)
+ ')'

SQL Server 7.0, 2000, and 2005, running the following will extract ONLY the version information.

SELECT LTRIM(RIGHT(LEFT(@@VERSION,38),9))


And the following query will work on SQL Server 2000 and up:

SELECT ‘SQL Server ‘
+ CAST(SERVERPROPERTY(‘productversion’) AS VARCHAR) + ‘ – ‘
+ CAST(SERVERPROPERTY(‘productlevel’) AS VARCHAR) + ‘ (‘
+ CAST(SERVERPROPERTY(‘edition’) AS VARCHAR) + ‘)’

read more »

SQL Server

SQL Server: TIMESTAMPS

The SQL Server timestamp data type has nothing to do with times or dates. SQL Server timestamps are binary numbers that indicate the relative sequence in which data modifications took place in a database. The timestamp data type was originally implemented to support the SQL Server recovery algorithms.

It further states Never use timestamp columns in keys, especially primary keys, because the timestamp value changes every time the row is modified.

I’d suggest using a DATETIME or SMALLDATETIME column in this case. DATETIME columns can store dates from January 1st, 1753 through December 31st, 9999 (there’s that Y10K problem) and are accurate to roughly 3 milliseconds. They use 8 bytes of storage. SMALLDATETIME columns can store dates from January 1st, 1900 through June 6th, 2079 and are accurate to the minute. SMALLDATETIME columns only use 4 bytes of storage.

You can insert values into DATETIME columns (or SMALLDATETIME) columns by enclosing them in quotes.

INSERT Table1 (DateTimeColumn)
VALUES (‘6/3/2021’)


This will insert the date part with the time set to midnight (12:00:00 AM). You can insert the current system date and time using the GETDATE() function:

INSERT Table1 (DateTimeColumn)
VALUES ( GETDATE() )

Your SELECT statement from above might look something like this:

SELECT * FROM links WHERE gdate = ‘2000-11-05’

This will run fine if you are putting dates in with no times. If you are adding times and want all the records for a particular day you can do something like this:

SELECT * FROM links WHERE LEFT( CONVERT(varchar, gdate, 120), 10) = ‘2000-11-05’

—————————

Usando DATETIME para assumir por defeito o valor dataHora actual, pode-se colocar no DefaultValue a funcao (getdate())

SQL Server

SQL Server 2000 Data Types

Built-in data types SQL Server 2000 ships with 27 built-in (system) data types

Data Types Description
bigint Integer data from -2^63 through 2^63-1
int Integer data from -2^31 through 2^31 – 1
smallint Integer data from -2^15 through 2^15 – 1
tinyint Integer data from 0 through 255
bit Integer data with either a 1 or 0 value
decimal Fixed precision and scale numeric data from -10^38 +1 through 10^38 -1
numeric Fixed precision and scale numeric data from -10^38 +1 through 10^38 -1
money Monetary data values from -2^63 through 2^63 – 1
smallmoney Monetary data values from -214,748.3648 through +214,748.3647
float Floating precision number data from -1.79E + 308 through 1.79E + 308
real Floating precision number data from -3.40E + 38 through 3.40E + 38
datetime Date and time data from January 1, 1753, through December 31, 9999,with an accuracy of 3.33 milliseconds
smalldatetime Date and time data from January 1, 1900, through June 6, 2079,with an accuracy of one minute
char Fixed-length character data with a maximum length of 8,000 characters
varchar Variable-length data with a maximum of 8,000 characters
text Variable-length data with a maximum length of 2^31 – 1 characters
nchar Fixed-length Unicode data with a maximum length of 4,000 characters
nvarchar Variable-length Unicode data with a maximum length of 4,000 characters
ntext Variable-length Unicode data with a maximum length of 2^30 – 1 characters
binary Fixed-length binary data with a maximum length of 8,000 bytes
varbinary Variable-length binary data with a maximum length of 8,000 bytes
image Variable-length binary data with a maximum length of 2^31 – 1 bytes
cursor A reference to a cursor
sql_variant A data type that stores values of various data types,except text, ntext, timestamp, and sql_variant
table A special data type used to store a result set for later processing
timestamp A database-wide unique number that gets updated every timea row gets updated
uniqueidentifier A globally unique identifier

User-defined data types

SQL Server 2000 supports user-defined data types too. User-defined data types provide a mechanism for applying a name to a data type that is more descriptive of the types of values to be held in the object. Using user-defined data type can make it easier for a programmer or database administrator to understand the intended use of any object defined with the data type. The user-defined data types are based on the system data types and can be used to predefine several attributes of a column, such as its data type, length, and whether it supports NULL values. To create a user-defined data type, you can use the sp_addtype system stored procedure or you could add one using the Enterprise Manager. When you create a user-defined data type, you should specify the following three properties:

  • Data type’s name.
  • Built-in data type upon which the new data type is based.
  • Whether it can contain NULL values.

The following example creates a user-defined data type based on money data type named cursale that cannot be NULL:

EXEC sp_addtype cursale, money, 'NOT NULL' GO

Both system and user-defined data types are used to enforce data integrity. It is very important that we put forth a lot of effort while designing tables: the better you design your tables, the more time you can work without any performance problems. In an ideal case, you never will update the structure of your tables.