Showing posts with label unique. Show all posts
Showing posts with label unique. Show all posts

Thursday, March 22, 2012

3 views becoming unweildy

Hi
Table T_VesselRoute { VR_VesselTrip, VR_DateTime, VR_Distance }
FOR EACH { TODAY, TODAY+1, ..., TODAY+6, REST }
Need UNIQUE COUNT(VR_VesselTrip), COUNT(VR_DateTime),
SUM(VR_Distance)
I have devised the following 3 views to achieve this, but it is
becoming too big - especially the 3rd view (given incomplete, but u
get the idea). I also need to count UNIQUE VR_VesselTrips - 2nd view
I'm quite a newbie to SQL. Is there a better way to do this?
Riyaz
CREATE VIEW CleanMoveStatus AS
SELECT VR.*, CAST(VR_DateTime AS INT) AS MoveDate,
FROM T_VesselRoute AS VR
WHERE MoveDate >= CAST(GETDATE() AS INT)
GO
CREATE VIEW DailyMoveStatus AS
SELECT CMS.MoveDate AS MoveDate,
COUNT(CMS.VR_VesselTrip) AS DailyTrips, -- UNIQUE COUNT ?
COUNT(CMS.MoveDate) AS DailyMoves,
SUM(CMS.VR_Distance) AS DailyDistance
FROM CleanMoveStatus AS CMS
GROUP BY MoveDate
GO
CREATE VIEW MoveStatus AS
SELECT
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyTrips ELSE 0 END) AS TodaysDailyTrips,
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyMoves ELSE 0 END) AS TodaysDailyMoves,
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyDistance ELSE 0 END) AS TodaysDailyDistance,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyTrips ELSE 0 END) AS TodayPlus1DailyTrips,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyMoves ELSE 0 END) AS TodayPlus1DailyMoves,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyDistance ELSE 0 END) AS TodayPlus1DailyDistance
FROM DailyMoveStatus AS DMS
GO
Hi
"riyaz.mansoor@.gmail.com" wrote:

> Hi
> Table T_VesselRoute { VR_VesselTrip, VR_DateTime, VR_Distance }
> FOR EACH { TODAY, TODAY+1, ..., TODAY+6, REST }
> Need UNIQUE COUNT(VR_VesselTrip), COUNT(VR_DateTime),
> SUM(VR_Distance)
> I have devised the following 3 views to achieve this, but it is
> becoming too big - especially the 3rd view (given incomplete, but u
> get the idea). I also need to count UNIQUE VR_VesselTrips - 2nd view
> I'm quite a newbie to SQL. Is there a better way to do this?
> Riyaz
>
> CREATE VIEW CleanMoveStatus AS
> SELECT VR.*, CAST(VR_DateTime AS INT) AS MoveDate,
> FROM T_VesselRoute AS VR
> WHERE MoveDate >= CAST(GETDATE() AS INT)
> GO
> CREATE VIEW DailyMoveStatus AS
> SELECT CMS.MoveDate AS MoveDate,
> COUNT(CMS.VR_VesselTrip) AS DailyTrips, -- UNIQUE COUNT ?
> COUNT(CMS.MoveDate) AS DailyMoves,
> SUM(CMS.VR_Distance) AS DailyDistance
> FROM CleanMoveStatus AS CMS
> GROUP BY MoveDate
> GO
> CREATE VIEW MoveStatus AS
> SELECT
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyTrips ELSE 0 END) AS TodaysDailyTrips,
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyMoves ELSE 0 END) AS TodaysDailyMoves,
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyDistance ELSE 0 END) AS TodaysDailyDistance,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyTrips ELSE 0 END) AS TodayPlus1DailyTrips,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyMoves ELSE 0 END) AS TodayPlus1DailyMoves,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyDistance ELSE 0 END) AS TodayPlus1DailyDistance
> FROM DailyMoveStatus AS DMS
> GO
>
See http://www.aspfaq.com/etiquette.asp?id=5006 on how to post DDL and
useful sample data.
You don't give which version of SQL Server you are using. With SQL 2005
there is a pivot operator. The method you show will work on SQL 2000. Usually
pivoting is best left to the client. You should be able to do this with a
single view, which may be better if you don't need the other views. You make
want to make the view indexed which may improve performance depending how
many changes will be made.
If you want to use a single view the following should work assuming that you
are only testing the presence of the values indicating an entry and when
present it indicates a single occassion. It is not tested as there is no ddl.
CREATE VIEW MoveStatus AS
SELECT
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyTrips IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyTrips,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyMoves IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyMoves,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyDistance IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyDistance,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1
AND VR.DailyTrips IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyTrips,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1
AND VR.DailyMoves IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyMoves,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1 AND
VR.DailyDistance IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyDistance
FROM T_VesselRoute AS VR
WHERE VR.MoveDate >= CAST(GETDATE() AS INT)
John

3 views becoming unweildy

Hi
Table T_VesselRoute { VR_VesselTrip, VR_DateTime, VR_Distance }
FOR EACH { TODAY, TODAY+1, ..., TODAY+6, REST }
Need UNIQUE COUNT(VR_VesselTrip), COUNT(VR_DateTime),
SUM(VR_Distance)
I have devised the following 3 views to achieve this, but it is
becoming too big - especially the 3rd view (given incomplete, but u
get the idea). I also need to count UNIQUE VR_VesselTrips - 2nd view
I'm quite a newbie to SQL. Is there a better way to do this?
Riyaz
CREATE VIEW CleanMoveStatus AS
SELECT VR.*, CAST(VR_DateTime AS INT) AS MoveDate,
FROM T_VesselRoute AS VR
WHERE MoveDate >= CAST(GETDATE() AS INT)
GO
CREATE VIEW DailyMoveStatus AS
SELECT CMS.MoveDate AS MoveDate,
COUNT(CMS.VR_VesselTrip) AS DailyTrips, -- UNIQUE COUNT ?
COUNT(CMS.MoveDate) AS DailyMoves,
SUM(CMS.VR_Distance) AS DailyDistance
FROM CleanMoveStatus AS CMS
GROUP BY MoveDate
GO
CREATE VIEW MoveStatus AS
SELECT
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyTrips ELSE 0 END) AS TodaysDailyTrips,
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyMoves ELSE 0 END) AS TodaysDailyMoves,
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyDistance ELSE 0 END) AS TodaysDailyDistance,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyTrips ELSE 0 END) AS TodayPlus1DailyTrips,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyMoves ELSE 0 END) AS TodayPlus1DailyMoves,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyDistance ELSE 0 END) AS TodayPlus1DailyDistance
FROM DailyMoveStatus AS DMS
GOHi
"riyaz.mansoor@.gmail.com" wrote:
> Hi
> Table T_VesselRoute { VR_VesselTrip, VR_DateTime, VR_Distance }
> FOR EACH { TODAY, TODAY+1, ..., TODAY+6, REST }
> Need UNIQUE COUNT(VR_VesselTrip), COUNT(VR_DateTime),
> SUM(VR_Distance)
> I have devised the following 3 views to achieve this, but it is
> becoming too big - especially the 3rd view (given incomplete, but u
> get the idea). I also need to count UNIQUE VR_VesselTrips - 2nd view
> I'm quite a newbie to SQL. Is there a better way to do this?
> Riyaz
>
> CREATE VIEW CleanMoveStatus AS
> SELECT VR.*, CAST(VR_DateTime AS INT) AS MoveDate,
> FROM T_VesselRoute AS VR
> WHERE MoveDate >= CAST(GETDATE() AS INT)
> GO
> CREATE VIEW DailyMoveStatus AS
> SELECT CMS.MoveDate AS MoveDate,
> COUNT(CMS.VR_VesselTrip) AS DailyTrips, -- UNIQUE COUNT ?
> COUNT(CMS.MoveDate) AS DailyMoves,
> SUM(CMS.VR_Distance) AS DailyDistance
> FROM CleanMoveStatus AS CMS
> GROUP BY MoveDate
> GO
> CREATE VIEW MoveStatus AS
> SELECT
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyTrips ELSE 0 END) AS TodaysDailyTrips,
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyMoves ELSE 0 END) AS TodaysDailyMoves,
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyDistance ELSE 0 END) AS TodaysDailyDistance,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyTrips ELSE 0 END) AS TodayPlus1DailyTrips,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyMoves ELSE 0 END) AS TodayPlus1DailyMoves,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyDistance ELSE 0 END) AS TodayPlus1DailyDistance
> FROM DailyMoveStatus AS DMS
> GO
>
See http://www.aspfaq.com/etiquette.asp?id=5006 on how to post DDL and
useful sample data.
You don't give which version of SQL Server you are using. With SQL 2005
there is a pivot operator. The method you show will work on SQL 2000. Usually
pivoting is best left to the client. You should be able to do this with a
single view, which may be better if you don't need the other views. You make
want to make the view indexed which may improve performance depending how
many changes will be made.
If you want to use a single view the following should work assuming that you
are only testing the presence of the values indicating an entry and when
present it indicates a single occassion. It is not tested as there is no ddl.
CREATE VIEW MoveStatus AS
SELECT
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyTrips IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyTrips,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyMoves IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyMoves,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyDistance IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyDistance,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1
AND VR.DailyTrips IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyTrips,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1
AND VR.DailyMoves IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyMoves,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1 AND
VR.DailyDistance IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyDistance
FROM T_VesselRoute AS VR
WHERE VR.MoveDate >= CAST(GETDATE() AS INT)
Johnsql

3 views becoming unweildy

Hi
Table T_VesselRoute { VR_VesselTrip, VR_DateTime, VR_Distance }
FOR EACH { TODAY, TODAY+1, ..., TODAY+6, REST }
Need UNIQUE COUNT(VR_VesselTrip), COUNT(VR_DateTime),
SUM(VR_Distance)
I have devised the following 3 views to achieve this, but it is
becoming too big - especially the 3rd view (given incomplete, but u
get the idea). I also need to count UNIQUE VR_VesselTrips - 2nd view
I'm quite a newbie to SQL. Is there a better way to do this?
Riyaz
CREATE VIEW CleanMoveStatus AS
SELECT VR.*, CAST(VR_DateTime AS INT) AS MoveDate,
FROM T_VesselRoute AS VR
WHERE MoveDate >= CAST(GETDATE() AS INT)
GO
CREATE VIEW DailyMoveStatus AS
SELECT CMS.MoveDate AS MoveDate,
COUNT(CMS.VR_VesselTrip) AS DailyTrips, -- UNIQUE COUNT ?
COUNT(CMS.MoveDate) AS DailyMoves,
SUM(CMS.VR_Distance) AS DailyDistance
FROM CleanMoveStatus AS CMS
GROUP BY MoveDate
GO
CREATE VIEW MoveStatus AS
SELECT
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyTrips ELSE 0 END) AS TodaysDailyTrips,
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyMoves ELSE 0 END) AS TodaysDailyMoves,
SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
DMS.DailyDistance ELSE 0 END) AS TodaysDailyDistance,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyTrips ELSE 0 END) AS TodayPlus1DailyTrips,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyMoves ELSE 0 END) AS TodayPlus1DailyMoves,
SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
DMS.DailyDistance ELSE 0 END) AS TodayPlus1DailyDistance
FROM DailyMoveStatus AS DMS
GOHi
"riyaz.mansoor@.gmail.com" wrote:

> Hi
> Table T_VesselRoute { VR_VesselTrip, VR_DateTime, VR_Distance }
> FOR EACH { TODAY, TODAY+1, ..., TODAY+6, REST }
> Need UNIQUE COUNT(VR_VesselTrip), COUNT(VR_DateTime),
> SUM(VR_Distance)
> I have devised the following 3 views to achieve this, but it is
> becoming too big - especially the 3rd view (given incomplete, but u
> get the idea). I also need to count UNIQUE VR_VesselTrips - 2nd view
> I'm quite a newbie to SQL. Is there a better way to do this?
> Riyaz
>
> CREATE VIEW CleanMoveStatus AS
> SELECT VR.*, CAST(VR_DateTime AS INT) AS MoveDate,
> FROM T_VesselRoute AS VR
> WHERE MoveDate >= CAST(GETDATE() AS INT)
> GO
> CREATE VIEW DailyMoveStatus AS
> SELECT CMS.MoveDate AS MoveDate,
> COUNT(CMS.VR_VesselTrip) AS DailyTrips, -- UNIQUE COUNT ?
> COUNT(CMS.MoveDate) AS DailyMoves,
> SUM(CMS.VR_Distance) AS DailyDistance
> FROM CleanMoveStatus AS CMS
> GROUP BY MoveDate
> GO
> CREATE VIEW MoveStatus AS
> SELECT
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyTrips ELSE 0 END) AS TodaysDailyTrips,
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyMoves ELSE 0 END) AS TodaysDailyMoves,
> SUM(CASE WHEN DMS.MoveDate = CAST(GETDATE() AS INT) THEN
> DMS.DailyDistance ELSE 0 END) AS TodaysDailyDistance,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyTrips ELSE 0 END) AS TodayPlus1DailyTrips,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyMoves ELSE 0 END) AS TodayPlus1DailyMoves,
> SUM(CASE WHEN (DMS.MoveDate + 1) = CAST(GETDATE() AS INT) THEN
> DMS.DailyDistance ELSE 0 END) AS TodayPlus1DailyDistance
> FROM DailyMoveStatus AS DMS
> GO
>
See http://www.aspfaq.com/etiquette.asp?id=5006 on how to post DDL and
useful sample data.
You don't give which version of SQL Server you are using. With SQL 2005
there is a pivot operator. The method you show will work on SQL 2000. Usuall
y
pivoting is best left to the client. You should be able to do this with a
single view, which may be better if you don't need the other views. You make
want to make the view indexed which may improve performance depending how
many changes will be made.
If you want to use a single view the following should work assuming that you
are only testing the presence of the values indicating an entry and when
present it indicates a single occassion. It is not tested as there is no ddl
.
CREATE VIEW MoveStatus AS
SELECT
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyTrips IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyTrips,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyMoves IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyMoves,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT)
AND VR.DailyDistance IS NOT NULL THEN 1 ELSE 0 END) AS TodaysDailyDistance,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1
AND VR.DailyTrips IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyTrips,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1
AND VR.DailyMoves IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyMoves,
SUM(CASE WHEN CAST(VR.MoveDate AS INT) = CAST(GETDATE() AS INT) -1 AND
VR.DailyDistance IS NOT NULL THEN 1 ELSE 0 END) AS TodayPlus1DailyDistance
FROM T_VesselRoute AS VR
WHERE VR.MoveDate >= CAST(GETDATE() AS INT)
John

Thursday, March 8, 2012

24000 Invalid cursor state. Prepared Statement

I have written a routine to search a unique record using prepared statement. Its my first sql coding with c++.

I am not using / importing any dlls.

I connect+allocs handels , then use SQLPrepare(StmtHandle, SQLStmt,SQL_NTS); to generate a guery.

I have written bind parameters and sqlexecute +sqlFetch in a loop and loop gets executed till ESC key is pressed.

First time when I bind paramaters using SQLBindParameter it works perfect.

When loop gets executed secondtime onwards, it gives an error.
SQLState: 24000 [ODBC Client Interface]Invalid cursor state.

If I open connection, handles, and prepared starement in same loop, THEN it gives correct record without 24000 error.

I want the advantage of prepared staement. So I do not want to close and open connection and prepare statement every time.

Have I missed any step?
Where & when I should code the cursor type? Any specific libraries I need to link?

Thanksyes you missed something. see brett's sticky at the top of the page.|||I traced the solution.

I thought that the mistake is in declaring scrollable cursors.

So I explained precisouly the problem in 7-8 lines.
Reading 50-60 lines with altogether different coding standards is difficult.

Its not coding problem but associated with scrollable cursor options.
So I did not include the code.

MSDN examples does not show such required step as the scope of example code gets over before such situation is reached!!.

24/7 Uptime

Hello,
I have a unique requirement to keep the MSDE database up for 24/7 as much as
possible.
Once the hard disk fails on work station, it is programmed to boot up with
Flash Drive operating system. So, we installed MSDE software on a flash
drive.
How should I plan for data availability through Flash drive? The point over
here is that, the DB size is around 1.3 GB. It will take time to transfer all
the data from Host server to Flash drive MSDE instance.
Any innovative ideas of renaming DB files from work station to Flash Drive
DB files? When work station is up and working, it can communicate with Flash
Drive easily.
I really appreciate in advance!
David
hi David,
David wrote:
> Hello,
> I have a unique requirement to keep the MSDE database up for 24/7 as
> much as possible.
> Once the hard disk fails on work station, it is programmed to boot up
> with Flash Drive operating system. So, we installed MSDE software on
> a flash drive.
> How should I plan for data availability through Flash drive? The
> point over here is that, the DB size is around 1.3 GB. It will take
> time to transfer all the data from Host server to Flash drive MSDE
> instance.
> Any innovative ideas of renaming DB files from work station to Flash
> Drive DB files? When work station is up and working, it can
> communicate with Flash Drive easily.
I'm not very confortable with a solution like that..
first of all this is not a fault tolerance solution... ok, you'll perhaps
have little down time for the OS, but I'm not that confident on memory
flash... more, if I corectly understand you, your scenario id not redundant
as you planned only for db failure and not the whole system crash (say CPU,
mother board and the like)..
the ideal solution would be of course a cluster with a SAN.. if one node
fails the other will survive and be up without human intervention and no
needs for further adjustements.. and the SAN are usually protected in RAID
design...
another logical way could be replication, with 2 servers and the databases
in replica.. SQL Server Agent is there but a manual replica should be set
and without the use of EM as MSDE does not provide that tool...
or a kind of manual log shipping.. not that precise, but the like...
additionally you have to provide the path to switch from one server to the
other...
another solution could be 2 servers, 1 completely in stand by or even shut
down, where th elive one operates for db access on an external HD
(http://www.lacie.com) ..in case of hardware failure (not the disk, of
course), you just need to switch the USB external drive to the other
server..
USB 2 is of course slower than a standard HD, but I'd really prefer a
standard mechanical HD over a flash one... and of course you do not have
problems to migrate 1,5gb of data over the net (which could be even
impossible in case of complete failure of the original system)..
again, a path to point to the new server is required...
Andrea Montanari (Microsoft MVP - SQL Server)
http://www.asql.biz/DbaMgr.shtmhttp://italy.mvps.org
DbaMgr2k ver 0.15.0 - DbaMgr ver 0.60.0
(my vb6+sql-dmo little try to provide MS MSDE 1.0 and MSDE 2000 a visual
interface)
-- remove DMO to reply