incomprshensible code
am 14.11.2007 20:05:00 von anowacki.pila
Hello
My friend gave me stored procedure, and I understand this code:
create table t (x varchar(50), y int)
insert into t (x)
select 'bob' + char(1) + 'fred'
select * from t
Please explain me and corect this code.
Andrzej
Re: incomprshensible code
am 14.11.2007 22:03:29 von Roy Harvey
On Wed, 14 Nov 2007 11:05:00 -0800, J?dru?
wrote:
>Hello
>
>My friend gave me stored procedure, and I understand this code:
>
>create table t (x varchar(50), y int)
Create an empty table. The table has two columns, one varying length
and one integer.
>insert into t (x)
We are going to INSERT new rows(s) into the table, but only assign
data to the column named x.
>select 'bob' + char(1) + 'fred'
The source of data for the INSERT is the result set of a SELECT. The
SELECT does not read any table, it just returns one row. The one
column in the result set is a character string made up by
concatenating (using the + operator) three other strings. The string
in the middle is created using the CHAR function. The CHAR function
converts a number ranging from 0 to 255 into an ASCII character. The
ASCII character that corresponds to 1 is not a printable character;
for me the results look like an empty square.
>select * from t
This returns the one row of the table.
x y
-------------------------------------------------- -----------
bob
fred NULL
>Please explain me and corect this code.
The code is correct, though it looks like a simple example of
something rather than anything of actual use.
Roy Harvey
Beacon Falls, CT
Re: incomprshensible code
am 14.11.2007 23:42:46 von anowacki.pila
On 14 Lis, 21:03, "Roy Harvey (SQL Server MVP)"
wrote:
> On Wed, 14 Nov 2007 11:05:00 -0800, J?dru?
> wrote:
>
> >Hello
>
> >My friend gave me stored procedure, and I understand this code:
>
> >create table t (x varchar(50), y int)
>
> Create an empty table. The table has two columns, one varying length
> and one integer.
>
> >insert into t (x)
>
> We are going to INSERT new rows(s) into the table, but only assign
> data to the column named x.
>
> >select 'bob' + char(1) + 'fred'
>
> The source of data for the INSERT is the result set of a SELECT. The
> SELECT does not read any table, it just returns one row. The one
> column in the result set is a character string made up by
> concatenating (using the + operator) three other strings. The string
> in the middle is created using the CHAR function. The CHAR function
> converts a number ranging from 0 to 255 into an ASCII character. The
> ASCII character that corresponds to 1 is not a printable character;
> for me the results look like an empty square.
>
> >select * from t
>
> This returns the one row of the table.
> x y
> -------------------------------------------------- -----------
> bob
> fred NULL
>
> >Please explain me and corect this code.
>
> The code is correct, though it looks like a simple example of
> something rather than anything of actual use.
>
> Roy Harvey
> Beacon Falls, CT
Thank You very much.