When i use
How can i go through the full result once,like .%Display()? Or how should i do to go through the full result? Is there anyone can help me? Waitting
!!!
SQL is a standard language for storing, manipulating and retrieving data in relational databases.
When i use
How can i go through the full result once,like .%Display()? Or how should i do to go through the full result? Is there anyone can help me? Waitting
!!!
I have several BPL's that act like SQL Server Integration Services (SSIS) where they are transferring data. When I do this they are all being written under 1 session id, is it possible to make the BPL create multiple session ID's as it is cycling through a Snapshot, so it is easier to read in the trace?
Thanks
Scott Roth
hi,
i have two where-clauses:
a) ... WHERE company=1 and product=7
b) ... WHERE product=7 and company=1
with other words the position of the where fields are swapped.
now the question is:
bring the where clauses a) and b) the same performance(queryplan) or do i have to write it in a special order???
in my point of view, there is a parser/optimizer who cares about this, so i don't have to care about.
Hello,
I have a small SQL question.
Running an example queries in our Samples Namespace:
1. select top 5 Description,Category from Cinema.Film order by Category - runs fine no issues and returns 2 columns as expected
2. select top 5 * from Cinema.Film order by Category - runs fine no issues and returns 8 columns as expected
3. select top 5 Description,Category,* from Cinema.Film order by ID - runs fine no issues, and returns 10 columns, with my first 2 repeated
4. When I try to combine the first 2 queries:
select top 5 Description,Category,* from Cinema.
Hi, I have used CSP to exec SQL selects from any own NAMESPACE. But in our servers we have many SQL GATEWAY CONNECTIONS.
I'd like to create a CSP page that could use these gateway to exec SQL using these gateway connections, only Administrators will use that page to launch many select at many dsn. I'm not sure if we must deploy that CSP on %SYS namespace and how to use DSN(SQL Gateway connections) that are defined on server.
Anoyone has made that?
To request a copy of the examples only – please see me, will email them out for free. pmkadow@gmail.com
To request a copy of the examples only – please see me, will email them out for free. pmkadow@gmail.com
To request a copy of the examples only – please see me, will email them out for free. pmkadow@gmail.com
Hi, I’m trying to setup a Business Operation where the Property is a drop down list of Strings. I was able to produce the desired effect but only using a hard coded list like Property LookupProp As %String(VALUELIST = ",value1,value2"). Instead I would like it to be populated from lookup table so I created a method to use SQL to fetch the result set from a Lookup table and then return it as the desired string. But doesn't allow me to do declare the property using the method like this: Property LookupProp As %String(VALUELIST = ##class(MyClass).
Our team is reworking an application to use REST services that use the same database as our current ZEN application. One of the new REST endpoints uses a query that ran very slowly when first implemented. After some analysis, we found that an index on one of the fields in the table greatly improved performance (a query that took 35 seconds was now taking a fraction of a second).
We saw this improvement on our development system and our test system. However, when we moved the code to the production system, the query still took “forever”. What went wrong?
I have created store procedure using management portal.
how to alter or modify SP using SQL in management portal.
Please refer below screen.
.png)
The newer dynamic SQL classes (%SQL.Statement and %StatementResult) perform better than %ResultSet, but I did not adopt them for some time because I had learned how to use %ResultSet. Finally, I made a cheat sheet, which I find useful when writing new code or rewriting old code. I thought other people might find it useful.
First, here is a somewhat more verbose adaptation of my cheat sheet:
|
1
|
%ResultSet::%New()
|
%SQL.
|
|---|
SQLCONNECT1 = tableUsers
SQLCONNECT2=tableLogEntries
select * from tableusers u, tablelogentries e where e.userid = u.userid
I keep getting the error References to an SQL Connection must constitute a whole subquery
I've setup ODBC connection so I can access Cache data within SQL Server.
I want to be able to write SQL queries for internal monitoring purposes, similar to what's possible with SQL Server. Specifically I want to be able to check mirroring status (i.e. check which is the current primary mirror member), check the status of any Ensemble productions (started/stopped), check the status of business hosts etc. I want to do all of this from SQL Server to go with our other system monitoring solutions.
Hello community! I have to work with queries using all kinds of methods like embedded sql and class queries. But my favorite is dynamic sql, simply because of how easy it is to manipulate them at runtime. The downside to writing a lot of these is the maintenance of the code and interacting with the output in a meaningful way. In an effort to have as much dynamism as possible so that we're not rewriting code constantly, and so that we have as little code possible (while still making sense and getting the job done), I made a function that takes in any dynamic query and outputs a dynamic object.
I'm having trouble accessing the snapshots EnsLib.SQL.Snapshot in %Library.ListOfObjects that are returned from method ExecuteProcedure in EnsLib.SQL.OutboundAdapter. The Microsoft SQL stored procedure I am executing returns multiple resultsets.
The issue I am having is that my code works fine when executed in the business operation (commented out in the code below) but when it is executed in the business process it errors. Any ideas as to why this happens? The error I get is:
> ERROR #5002: Cache error: <METHOD DOES NOT EXIST>zGetAt+5 ^%Library.ListOfObjects.1 *%Open,%Library.
The select query here "select Settings from Ens_Config.Item" in the SQL Query of management portal returns this:
ValidationHost 7ActOnTransformErrorHost1 ReplyCodeActionsHostE=D AlertOnErrorHost1 9 AlertGroupsHost$LabAlertGroup,1-CriticalAlertGroup BusinessPartnerHost
How do I isolate just one of the settings e.g. ReplyCodeActions or LocalInterface
For example, i want to search for all entries that have a value for ReplyCodeActions
I realize i can open the production in studio and search for those setting values.
Hi guys!
As you know there are two (at least) ways to get the stored value of the property of InterSystems IRIS class if you know the ID of an instance (or a record).
1. Get it by as a property of an instance with "Object access":
ClassMethod GetPropertyForID(stId As %Integer) As %String
{
set obj=..%OpenId(stId)
return obj.StringData
}
2. Get it as a value of a column of the record with "SQL access":
Hello,
When i click on the menu to run the Data import wizard from MP, i receive following CSP error
| <UNDEFINED>zOnPageHEAD+229^%cspapp.exp.utilsqleximwizardcontent.1 *schemaname : CSP Error |
It is happening for all the namespaces. Looks like some permission issue. Same issue with Data Export wizard. Help to resolve this will be appreciated.
I am using
Cache for Windows (x86-64) 2017.2.2 (Build 865_0_18763U)
Thanks,
Jimmy Christian.
Referencing this post:
https://community.intersystems.com/post/producing-json-sql
I'm not sure how to actually interact with the result set I get from doing something like this. I want to return something like:
[{"field1":1, "field2":2}, {"field1":2, "field2":10}]
I'm finding it very difficult to get it in this format, since %Print appends a newline onto the end of the {} object it prints.
Here's the closest I've gotten:
set query = "select JSON_OBJECT('field1': field1, 'field2":field2) from MyTable where x=? and y=?"
set tStatement = ##class(%SQL.Statement).%New()
set qStatus = tStatement.
I tryinfg to alter a column definition data type with a user that seems that doesnt have priviledges, but the user has this priviliedge.
Documentation:
Privileges and Locking
The ALTER TABLE command is a privileged operation. Prior to using ALTER TABLE it is necessary for your process to have either %ALTER_TABLE administrative privilege or an %ALTER object privilege for the specified table. Failing to do so results in an SQLCODE -99 error (Privilege Violation). You can determine if the current user has %ALTER privilege by invoking the %CHECKPRIV command.
HI
How to force a specific index in SQL?
Hello all,
I have a Recordset object which contains data from a table "XYZ".
Currently i use this object to extract data using %Get(COL1,COL2...) in a loop and than pass it to a function which inserts the data into another dynamically created Table "ABC" for each record. This takes a lot of time when 100's of records.
Is there a way i can directly copy a RecordSet to a dynamic table without looping through..?
Something like copy Recordset (COL1,COL2..)--> "ABC"
Thanks,
Jimmy
Say I have a property in a persistent class that stores list of colours and I would like to query that field and return a list and be able to loop that list to get individual colours how will l go about achieving this I have tried something like this but its not working as expected
&sql(SELECT colour INTO :colourList FROM favouritecolours)
While (SQLCODE = 0)
{
for i=1:1:$LENGTH($P(colourList,","))
{
set fvalue=$P(colourList,",",i)
write "the first"_fvalue,i,
}
}the query returns colours but its just a string no delimiter eg;
green red blueI have tried with
&sql(SELECT LIST(colour) INTO :colourList FROM favouritecolours) but still same results .
I used Cache 2016.
I used the following statement to sort after paging, but suggested an error:
SELECT *
FROM
(SELECT sslog.userRowid,
sslog.CreateDate,
sslog.CreateTime,
Sslog.SSUSR,
sslog.Terminal,
ssuser.Initials,
ssuser.USName
FROM SUser_Log sslog
LEFT JOIN DHC_SSuser ssuser ON (Sslog.SSUSR = ssuser.userRowid
OR sslog.ssusr = ssuser.Initials
OR sslog.ssusr = ssuser.USName)
WHERE ssuser.USName ['admin'
ORDER BY sslog.End users sure love Excel tables. So, how can you deliver the second to the first? Read this post to find out.
Hi everyone,
Im new in cache, i came from Java and im missing some features that i couldn't find in the documentation, I hope you can help me with this questions.
Just a brief introducction:
- Im in a project with old cache version, so saddly i can't use Eclipse + Atelier, so im using Studio.
- Currently im in a project with persistent classes, we want to turn apart the globals and focus on tables.
The questions:
Is there any way to make something like hibernate for cache %Persistent classes?
Hi All,
I have two tables LB_TestSet and LB_Transfer
LB_Transfer has a list if TestSet row IDs, so i am doing the following join
SELECT
LBTS_RowID,
,LBTS_CollectedDate
FROM SQLUser.LB_TestSet
JOIN SQLUser.LB_Transfer ON ($LISTBUILD(LBTS_RowID) %INLIST LBTR_TestSetList)
WHERE LBTS_CollectedDate BETWEEN '2019-01-01' AND '2019-05-10'Without the date filter the query returns data, but if i add the date filter no data is returned
I also tried using %INTERNAL, %EXTERNAL TO_DATE('2009-01-01','YYYY-MM-DD')
if i filter by RowID for example the filters work.
here is my trigger:
CREATE TRIGGER "SQLUser".SYM_ON_U_FOR_SYM_CHNNL_125123 AFTER UPDATE ON "SQLUser"."sym_channel" REFERENCING OLD ROW AS OLD NEW ROW AS NEW FOR EACH ROW DECLARE @var_row_data VARCHAR(16336); WHEN ( 1 = 1 and 1 = 1 ) -- I will use OLD/NEW alias here set @var_row_data = ''; LANGUAGE sql insert into mytable (id, data) values(1, @var_row_data);
here is error message:
ERROR: [SQLCODE: <-400>:<FATAL ERROR >] [Location:
Have some free text fields in your application that you wish you could search efficiently? Tried using some methods before but found out that they just cannot match the performance needs of your customers? Do I have one weird trick that will solve all your problems? Don’t you already know!? All I do is bring great solutions to your performance pitfalls!
As usual, if you want the TL;DR (too long; didn’t read) version, skip to the end. Just know you are hurting my feelings.
If you open up your version of Sample.
Hi! I've been fiddling with linked tables to get data from other servers, and I encountered a problem that I'm curious about. Maybe I'm not using these tools as intended or there's more going on, so I'm asking here.
I'm running a query on linked table A, something simple like this:
select name from A where id = 5983658923646
And I get this error:
[SQLCODE: <-400>:<Fatal error occurred>]
[%msg: <>]
If id, or anything comparison, is something smaller like 4345, it works just fine. It's only when the where reaches a certain length, not just id, that it fails.
Hi!
I was trying to create a query that can be exposed as a stored procedure (function actually) that would return a resultset with a random number of columns.
Unfortunately, it seems that unless I specify the ROWSPEC annotation on the Query method, I won't get any columns exposed. I was hoping to implement QueryNameGetInfo method and specify the names and number of columns I would be returning dynamically. But it seems that GetInfo information is simply ignored.
Here is my code:
Class Test.