|
POST
|
An ArcGIS Query Layer will return the contents of a SQL query. That query can contain a spatial predicate, as would be valid from a query in SQL Server Management Studio. If you're looking for SQL examples using Microsoft geometry and/or geography columns, you should probably be reviewing Microsoft documentation, not Esri sources (Esri hasn't supported their own geometry model in SQL Server in a decade, so there isn't really anything called an "SDE geometry" anymore). The OGC "Within" operator (STWithin) is tricky because the definition of "within" doesn't include overlap at boundaries (you might need to use STIntersects then filter from there). The principal limitation for a Query Layer is that you cannot return more than one geometry column; returning CLOB/NCLOB columns in the result set might be problematic, as well (depending on the release and exact query). Without a concrete attempt at a query, with a description of the tables involved, it's difficult to provide a more specific response. - V
... View more
10-04-2022
11:16 AM
|
2
|
1
|
4001
|
|
POST
|
@ChrisJensen wrote: ... So server does not use the feature dataset construct, it only needs the *table*, owner.tablename? Otherwise a feature dataset is purely a desktop property? That's a really broad brush, so no, this is not correct. Server uses feature datasets in conjunction with geodatabase behavior. Serving a simple table does not require geodatabase behavior, so the name change in metadata did not impact the service (though if you tried to republish, you might need to repair the source). @ChrisJensen also wrote: I'm curious to know how a feature dataset is modeled in a sde geodatabase. Is it an attribute in each FC table, is it own table or...? There is no longer anything called an 'sde geodatabase'. The only remainders of what had been called "SDE" are in the suffix of the database connection file and the DLL used to implement the Direct Connect connection. The implementation was different before 10.0, but in modern times, feature datasets are an XML property in the gdb_items table. Quoting the Pro documentation (for PostgreSQL): Feature datasets are objects that allow you to implement specific geodatabase dataset types, such as networks or topologies. A feature dataset is not a separate table in the database; it is a virtual collection of feature classes and controller (or extension) datasets that are grouped by a common ID. The ID is maintained in the gdb_items system table. Each feature class is identified as part of the feature dataset through the gdb_itemrelationships system table. - V
... View more
09-27-2022
06:10 PM
|
1
|
1
|
2609
|
|
POST
|
Hmmm... Not sure if that should have been an issue, but it probably isn't because the *table* is served, and only one table is possible with the same owner (if enterprise) or in the same geodatabase (if FGDB). - V
... View more
09-27-2022
09:53 AM
|
0
|
4
|
2619
|
|
POST
|
Does "Long" really mean "LONG"? LONG is not a supported Oracle type. Do a DESCRIBE in SQL*Plus and report that here (you can redact the actual column names, but don't alter the types). - V
... View more
09-14-2022
11:14 AM
|
0
|
1
|
3947
|
|
POST
|
Since it's already a view, you can populate lookups to map the integer domain values to the appropriate values. - V
... View more
09-13-2022
07:38 AM
|
1
|
0
|
2145
|
|
POST
|
Changes made to the base table are not manifested to SDE table metadata immediately. You must first connect as the owner and describe the table (this can only be done as the owner). You do not want to do this if the table is registered as versioned. - V
... View more
08-31-2022
06:12 PM
|
1
|
1
|
1800
|
|
POST
|
Fragmentation is the thing that kills database performance. By mixing "system" data and "user" data, you increase fragmentation. The auto-increment on the SDE tablespace should be small, while the auto-increment on user data should be large (again, to avoid fragmentation). The same principle should be applied to OS disks (C: for Microsoft, D:,E:,... for applications; / & usr for Linux, /dataN for applications). You don't have to conform to best practice, but you don't have to have optimal performance, either. - V
... View more
08-29-2022
07:52 AM
|
0
|
0
|
2463
|
|
POST
|
Yes, it's certainly possible, though I suggest you make the effort to learn Python (which is the easiest computer language to learn, ever). Calculate Field field reference syntax is a bit more obtuse, so you want to follow the documentation carefully. That will result in a code block that looks like this: def concatenateFields(f1,f2,f3,f4,f5,f6,f7):
l = []
if f1: l.append(f1)
if f2: l.append(f2)
if f3: l.append(f3)
if f4: l.append(f4)
if f5: l.append(f5)
if f6: l.append(f6)
if f7: l.append(f7)
return ', '.join(l) and an expression of: concatenateFields(!SITUS_ADR1!,!SITUS_ST!,!SITUS_ST1!,!SITUS_TYPE!,!SITUS_CITY!,!SITUS_ST!,!SITUS_ZIP!) - V
... View more
08-27-2022
08:27 AM
|
0
|
0
|
1257
|
|
POST
|
Which version of Python are you using on the client? What version of Enterprise are you using. This could be an error from the authentication server itself, too. - V
... View more
08-22-2022
01:03 PM
|
0
|
0
|
8580
|
|
POST
|
No, that wouldn't be wise, and it might not work -- What if the string field has a width of 5 or less? You'd be better off reviewing the non-NULL empty fields for why they have corrupt values, rather than corrupting the valid NULLs. - V
... View more
08-22-2022
12:24 PM
|
2
|
0
|
3816
|
|
POST
|
I'm not sure what you might mean by this. I've never modified any settings. AWS just works. I should point out that there can be significant performance issues across missions. I had a three network hop solution (with shared router load among a couple of hundred power users) that was an order of magnitude slower than local access. But that's just AWS being AWS -- tightly coupled applications need to be in the same mission. - V
... View more
08-22-2022
09:33 AM
|
0
|
0
|
2647
|
|
POST
|
Please don't SHOUT in post titles. You actually reduce the number of folks willing to read your post by using ALL CAPS. You can edit the original post so it isn't as hard to read. - V
... View more
08-19-2022
08:09 AM
|
1
|
1
|
3860
|
|
POST
|
Sorry, you won't ever get my buy-in on the idea that geometry types are unnecessary. Storing geometry in multiple scalar columns is a wasted opportunity, and a properly tuned database, even at 500k rows should significantly faster than a "make geometry on the fly" solution, so your test methodology is likely faulty. Randomly distributed features is a known worst case, so you're stacking the deck in the evaluation. You're also testing at the end of a long common pipeline, so the significance of the difference can be masked. I just did a quick data load of 500k and 2m random global features (by area, so weighted away from poles -- see this StackExchange post for the function), created views, then added an optimized table which was derived from the first by doing an ORDER BY on floor((lon + 180) / 6.0)::int, lat DESC adding an extra integer column of "oldid". On my home PC (6 years old, 3Ghz 6-cores, 24Gb RAM), using a PG11.8 database, I got the following results (all times in pgAdmin) query: SELECT count(geomcol) FROM table WHERE ST_Within(geomcol, ST_GeomFromText('POLYGON (( -120 40, -80 40, -80 70, -120 70, -120 40))',4326)) table rows returned count time (in milliseconds) example1a 500000 8212 119ms v_example1a 500000 8212 250ms example1b 500000 8212 80ms example2a 2000000 32725 126ms v_example2a 2000000 32725 613ms example2b 2000000 32725 100ms query: SELECT idcol,lat,lon,geomcol FROM table WHERE ST_Within(geomcol, ST_GeomFromText('POLYGON (( 80 40, 120 40, 120 70, 80 70,80 40))',4326)) table rows returned count time (in milliseconds) example1a 500000 8291 119ms v_example1a 500000 8291 323ms example1b 500000 8291 141ms example2a 2000000 33401 348ms v_example2a 2000000 33401 738ms example2b 2000000 33401 315ms When I changed the search geometry and reversed the query order (v_example2a, example2a, example2b), the view took an additional 100ms over the table, so the example1a query was helping to cache the pages for the view (I should have made 3 tables). I used to have low-level query performance tools, but the ArcSDE API was deprecated, and those tools haven't been ported to Python yet (too busy). Still we can see that the geometry is clearly better than "on-the-fly" generation, and that the slightest bit of defragmentation (6 degree bands) often improved performance (though not in human perception with so few rows involved). - V
... View more
08-16-2022
09:22 AM
|
0
|
1
|
9845
|
|
POST
|
Please post the code itself, not a picture. Images are not legible on all devices, and would require retying your code to test or recommend a solution. - V
... View more
08-02-2022
07:08 AM
|
0
|
1
|
1675
|
| Title | Kudos | Posted |
|---|---|---|
| 2 | 2 weeks ago | |
| 1 | 4 weeks ago | |
| 1 | 3 weeks ago | |
| 2 | 4 weeks ago | |
| 2 | 05-22-2026 04:57 PM |